Tabula-py字体未实现错误

3

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
“OpenType Layout”消息是无关紧要的,它是用于PDF创建的。您应该分享PDF文件。 - Tilman Hausherr
1个回答

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 才能看到您的数据。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接