Tabula-py字体未实现错误

时间:2018-02-02 10:49:42

标签: python pdf tabula

PDF文件内容是中文(字符,而不是图片等),因此它可能使用不同的字体。 我的代码:

>>> import tabula
>>> df = tabula.read_pdf('/data/proj/smartinvestment/cninfo_download_reports/pdf/601101/2016-12-29/1202969937.PDF', pages='all')

错误:

Feb 02, 2018 6:44:34 PM org.apache.pdfbox.pdmodel.font.PDCIDFontType2 <init>
INFO: OpenType Layout tables used in font ABCDEE+ËÎÌå are not implemented in PDFBox and will be ignored

最终的DataFrame为空。

我无法从stackoverflow中找到任何想法。 我该如何解决这个问题?我应该导入一些字体,还是有其他原因造成这个错误?

1 个答案:

答案 0 :(得分:1)

我感到你很痛苦。但是,我正在数据框(df)中获取数据,并执行与您类似的步骤。要进行故障排除,请查看返回的df类型:

import tabula

pdf_file_name = "my_filename.pdf"
df = tabula.read_pdf(pdf_file_name,
                     encoding='Ansi') # or encoding='utf-8'

print(type(df))
# df.to_csv("output.csv", index=False)

由于您拥有pages =“ all”,因此您的df很可能是df的列表,这将要求您查看列表中的每个df以查看数据的证据。

此外,如果tabula.read_pdf的multiple_tables参数设置为True,则df将是df的列表,这又需要您查看列表中的每个df才能查看数据。