首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pdfminer3不是从彩色pdf页面中提取文本,如何将pdf页面转换成灰度?

pdfminer3不是从彩色pdf页面中提取文本,如何将pdf页面转换成灰度?
EN

Stack Overflow用户
提问于 2020-12-17 10:59:55
回答 1查看 299关注 0票数 0

我正在使用pdfminer3库从pdf中提取文本。但是它在彩色页面中的效果并不好。我尝试使用以下代码从pdf中提取文本:

代码语言:javascript
复制
from pdfminer3.layout import LAParams, LTTextBox
from pdfminer3.pdfpage import PDFPage
from pdfminer3.pdfinterp import PDFResourceManager
from pdfminer3.pdfinterp import PDFPageInterpreter
from pdfminer3.converter import PDFPageAggregator
from pdfminer3.converter import TextConverter
import io

resource_manager = PDFResourceManager()
fake_file_handle = io.StringIO()
converter = TextConverter(resource_manager, fake_file_handle, laparams=LAParams())
page_interpreter = PDFPageInterpreter(resource_manager, converter)

with open("pdffile.pdf", 'rb') as fh:
    for page in PDFPage.get_pages(fh,caching=True,check_extractable=True):
        page_interpreter.process_page(page)
    text = fake_file_handle.getvalue()
f1=open("pdftext.txt","w+",encoding="utf8")
for i in text:
    f1.write(str(i))

# close open handles
converter.close()
fake_file_handle.close()

print(text)

它仅能很好地从一些文件中提取数据。但是从有色区域提取的数据如下:

代码语言:javascript
复制
(cid:7)(cid:1)(cid:4)(cid:1)(cid:9)(cid:16)(cid:20)(cid:17)

(cid:10)(cid:15)(cid:14)(cid:1)(cid:16)(cid:20)(cid:17)

(cid:1)(cid:14)(cid:18)(cid:1)(cid:12) (cid:18)(cid:1)(cid:19)(cid:2)(cid:1)(cid:17)(cid:9)

(cid:18)(cid:20)(cid:12)(cid:19)(cid:1)(cid:14)(cid:16)(cid:20)(cid:17)

这不是我的数据在pdf中的样子。这是一个简单的字母数字数据。我不知道为什么它会显示cid:,它甚至不在我的pdf文件中。

谁能告诉我如何将pdf转换成灰度pdf页面。这样我就可以使用pdfminer了。我不想把pdf转换成图像,然后转换成grascale,我已经做了,因为pytesseract不能很好地提取数据。

我也试过了pdf管道工,但它也没有给我正确的数据。或者有人能建议我从图像中提取除pytesseract以外的文本的库。

最后,我使用在线转换工具将pdf页面转换成灰度。当我试图从它中提取数据时,它给出的输出与我前面提到的输出相同。所以,我想错误在pdfminer或我的代码中。如何解决这个问题.

这是一个pdf文件,我试图从中提取文本,它给出了空白输出:Pdf文件

EN

回答 1

Stack Overflow用户

发布于 2020-12-26 12:48:58

您的示例PDF只是包装了一些报纸页面的位图图像。

另一方面,从PDF中的文本绘图指令中提取文本,而不是位图图像。

要从PDF检索像这样的文本,您必须应用OCR。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65339414

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档