使用tabla和python读取pdf文件时缺少数据
我有一个包含多个文本和表格的pdf,其中一行包含如下内容:使用tabla和python读取pdf文件时缺少数据,python,pdf,tabula,tabula-py,Python,Pdf,Tabula,Tabula Py,我有一个包含多个文本和表格的pdf,其中一行包含如下内容: PDF content : Id: 5647484848 Name Alex J 现在我使用tabla-py解析内容,但是结果缺少了一些东西(这意味着您可以看到缺少第一个字符或数字) 实际上,我原来的pdf有很多文本和表格。我也尝试了其他行,在那里我得到了正确的结果 Wrong Result : ['', '', 'Id:', '', '647484848', 'Name', '', 'lex J', '', '', ''] Sho
PDF content :
Id: 5647484848 Name Alex J
现在我使用tabla-py解析内容,但是结果缺少了一些东西(这意味着您可以看到缺少第一个字符或数字)
实际上,我原来的pdf有很多文本和表格。我也尝试了其他行,在那里我得到了正确的结果
Wrong Result :
['', '', 'Id:', '', '647484848', 'Name', '', 'lex J', '', '', '']
Should be :
['', '', 'Id:', '', '5647484848', 'Name', '', 'Alex J', '', '', '']
样本:
# to get the exact row to find the name & index [7] is for Name
if len(row) == 11:
if "Name" in row:
print(row[7])
return Student(studentname=row[7])
在阅读表格时,我在表格中设置了
df = tabula.read_pdf(pdf, output_format='json', pages='all',
password=secure_password, lattice=True)
行是简单的文本类型,没有图像和所有。不知道为什么这一行数据会失败。我对其他行应用了类似的逻辑,得到了正确的结果。请建议 通过将表格中的提取模式从lattice=True更改为lattice=False来解决
df = tabula.read_pdf(pdf, output_format='json', pages='all',
password=secure_password, lattice=False)
通过将表格中的提取模式从lattice=True更改为lattice=False解决
df = tabula.read_pdf(pdf, output_format='json', pages='all',
password=secure_password, lattice=False)
您能否将pdf中有问题的行复制/粘贴到记事本文本文件中?否则,该数据点的pdf可能会被破坏。在PDF中,“您看到的”不是“您可以提取的”,因为视觉符号和文本含义是分开存储的。它可能看起来不错,但“文本表示”可能是垃圾。如果是这样,您需要研究PDF上的OCR,并从该.Btw中获取缺少的值。这对SO来说是个坏问题-没有复制的方法,也没有解决的方法。@PatrickArtner是的,我可以将它复制到文本编辑器中,这没有问题。我可以在那里查看原始内容。谢谢扫描您是否将pdf中有问题的行复制/粘贴到记事本文本文件中?否则,该数据点的pdf可能会被破坏。在PDF中,“您看到的”不是“您可以提取的”,因为视觉符号和文本含义是分开存储的。它可能看起来不错,但“文本表示”可能是垃圾。如果是这样,您需要研究PDF上的OCR,并从该.Btw中获取缺少的值。这对SO来说是个坏问题-没有复制的方法,也没有解决的方法。@PatrickArtner是的,我可以将它复制到文本编辑器中,这没有问题。我可以在那里查看原始内容。谢谢