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中找不到任何想法。我如何解决这个问题?我是不是应该导入一些字体,或者是否有其他原因导致了这个错误?
发布于 2019-08-30 07:25:35
我能感受到你的痛苦。但是,我在我的dataframe (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以查看数据。
https://stackoverflow.com/questions/48581038
复制相似问题