【问题标题】:Extract text from pdf converted from webpage using Pypdf2使用Pypdf2从网页转换的pdf中提取文本
【发布时间】:2020-06-25 10:27:27
【问题描述】:

我使用 chrome 使用另存为 pdf 选项将网页转换为 Pdf。现在的问题是,当我使用 PyPDF2 从中提取数据时,它显示为 Null,而它可以轻松地处理其他 pdf 文件。我知道我可以直接从网站中提取数据,但我想了解为什么这不起作用。它显示了正确的页数,但是当我提取文本()时,它什么也没显示。有谁知道是什么问题? 该页面的链接是https://en.wikipedia.org/wiki/Rapping。我将此网页转换为 pdf。

import PyPDF2
pdfFileObj = open('C:/Users/System/Desktop/Rapping - Wikipedia.pdf','rb')
pdfReader = PyPDF2.PdfFileReader(pdfFileObj)
print(pdfReader.numPages)
pageObj = pdfReader.getPage(0)
print(pageObj.extractText())
pdfFileObj.close()

【问题讨论】:

  • 没有代码和问题 pdf 文件我怀疑任何人都可以提供比猜测更好的东西

标签: python pdf data-extraction pypdf2


【解决方案1】:

PyPDF2 从 pdf 中提取文本非常不可靠。正如here 所指出的那样。 它说:

虽然 PyPDF2 有 .extractText(),但可以在其页面对象上使用 (此示例中未显示),它不能很好地工作。一些 PDF 将返回文本,有些将返回一个空字符串。当你想要的时候 要从 PDF 中提取文本,您应该查看 PDFMiner 项目 反而。 PDFMiner 更加健壮并且是专门设计的 用于从 PDF 中提取文本。

  1. 您可以改为使用

    安装和使用 pdfminer

    pip install pdfminer

  2. 或者您可以使用另一个名为 pdftotext by xpdfreader 的开源实用程序。页面上给出了使用该实用程序的说明。

你可以从here下载命令行工具 并且可以使用subprocess 使用pdftotext.exe 实用程序。使用子进程的详细说明给出here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-18
    相关资源
    最近更新 更多