请不要使用“tika”作为答案。我已经尝试了这个问题的答案:
如何从PDF文件中提取文本?
我有这个PDF文件,https://drive.google.com/file/d/1aUfQAlvq5hA9kz2c9CyJADiY3KpY3-Vn/view?usp=sharing,我想复制文本。
import PyPDF2
pdfFileObject = open('C:\\Path\\To\\Local\\File\\Test_PDF.pdf', 'rb')
pdfReader = PyPDF2.PdfFileReader(pdfFileObject)
count = pdfReader.numPages
for i in range(count):
page = pdfReader.getPage(i)
print(page.extractText())
输出为“提交日期:2019-10-21 16:03:36.093 |表单键:5544”,这只是文本的一部分。下一行文字以“RFA附件A….”开头
找到了解决方案。
#pip install pdfminer.six
import io
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
def convert_pdf_to_txt(path):
'''Convert pdf content from a file path to text
:path the file path
'''
rsrcmgr = PDFResourceManager()
codec = 'utf-8'
laparams = LAParams()
with io.StringIO() as retstr:
with TextConverter(rsrcmgr, retstr, codec=codec,
laparams=laparams) as device:
with open(path, 'rb') as fp:
interpreter = PDFPageInterpreter(rsrcmgr, device)
password = ""
maxpages = 0
caching = True
pagenos = set()
for page in PDFPage.get_pages(fp,
pagenos,
maxpages=maxpages,
password=password,
caching=caching,
check_extractable=True):
interpreter.process_page(page)
return retstr.getvalue()
if __name__ == "__main__":
print(convert_pdf_to_txt('C:\\Path\\To\\Test_PDF.pdf'))
我自己从来没有使用过PYPDF2,所以无法真正输入我的知识来找出到底出了什么问题。但是文档中的以下内容说明了有关函数的以下内容
按内容流中提供的顺序定位所有文本绘制命令,并提取文本。这适用于某些PDF文件,但对于其他文件效果不佳,具体取决于使用的生成器。这将在未来得到完善。不要依赖于此函数输出的文本顺序,因为如果此函数变得更复杂,则会发生变化。
这里有另一种方法可以解决这个问题,也可以解释可能出了什么问题。我还建议使用pdftotext。这对我来说已经可靠地工作了很多次;这个答案也将证明是有帮助的。
我有一些pdf文件,使用pdfbox我已经将它们转换为文本并存储到文本文件中,现在我要从文本文件中删除它们 超链接 我希望按如下方式逐行获取有效文本: 我们提出了一种从纯文本中提取的多词概念词进行本体学习的方法OntoGain。OntoGain遵循一个由不同处理层定义的本体学习过程。在普通术语提取的基础上,通过对提取的概念进行聚类,形成概念层次结构。然后,衍生术语“分类法”将丰富非分类关系。已经研
问题内容: 我正在尝试使用提取此 PDF文件中包含的文本。 我正在使用PyPDF2模块,并具有以下脚本: 运行代码时,得到以下输出,该输出与PDF文档中包含的输出不同: 如何提取PDF文档中的文本? 问题答案: 要从PDF提取文本,请使用以下代码
问题内容: 我正在寻找有关如何使用带有Python的PDFMiner从PDF文件提取文本的文档 或 示例。 看来PDFMiner更新了他们的API,我发现的所有相关示例都包含过时的代码(类和方法已更改)。我发现的那些使从PDF文件提取文本的任务更加容易的库正在使用旧的PDFMiner语法,因此我不确定如何执行此操作。 照原样,我只是在查看源代码,以查看是否可以解决。 问题答案: 这是一个使用当前版
问题内容: 我想使用Apache PDFBox从给定的PDF文件中提取文本。 我写了这段代码: 但是,出现以下错误: 我在类路径中添加了pdfbox-1.8.5.jar和fontbox-1.8.5.jar。 编辑 我添加到程序的开头。 我运行了它,然后出现了与上述相同的错误,并且未出现在控制台中。 因此,我认为我对类路径或其他东西有疑问。 谢谢。 问题答案: 我执行了您的代码,它工作正常。也许您的
每个人我试图通过itext从PDF文件中获取一些带下划线的文本,这对我来说似乎非常困难。我已经搜索了很长时间的解决方案,并学习了如何获取文本的字体系列、字体大小和文本位置。但是,没有下划线。期待您的帮助!非常感谢。
问题内容: 我在应用程序的一种方法中使用Python的请求库。该方法的主体如下所示: 我想为该方法编写一些单元测试,但是,我想做的是传递一个伪本地URL,例如: 当我使用本地URL调用 requests.get 时,出现以下 KeyError 异常: 问题是如何将本地URL传递给 request.get ? PS:我整理了上面的示例。它可能包含许多错误。 问题答案: 正如@WooParadog解释