簡體   English   中英

PyPDF2 提取空文本

[英]PyPDF2 extract empty Text

我正在使用 PyPDF2 從 pdf 中提取文本。 我在谷歌中找到的所有示例看起來都像我的代碼:

import PyPDF2

reader = PyPDF2.PdfFileReader("test2.pdf")
page = reader.getPage(0)
text = page.extractText()
print(text.encode("utf-8"))

但是,我的控制台中有空文本:

b''

這段代碼我已經針對不同的 pdf 進行了測試,所有 pdf 都是空的

更新:

# getDocumentInfo
{'/Producer': 'Skia/PDF m75'}

文件pdf

看起來某些字體/文本組合使 PyPDF2、PyPDF3 或 PyPDF4 無法讀取文本。

要從這些 PDF 中提取文本,可以使用專用的 PDF 文本提取包pdfminer.six

from pdfminer import high_level

local_pdf_filename = "/path/to/pdf/you_want_to_extract_text_from.pdf"
pages = [0] # just the first page

extracted_text = high_level.extract_text(local_pdf_filename, "", pages)
print(extracted_text)

它適用於所有對我來說失敗的 pdf,並且可以非常快速地作為后備實施。 extract_text 函數的完整文檔在此處

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM