我正在编写一个脚本,"读取" PDF文件,然后自动重命名它从字典中识别的文件。但是PyPDF2只返回一些PDF的空行,而其他的则工作正常。读取文件的代码:
import PyPDF2
# File name
file = 'sample.pdf'
# Open File
with open(file, "rb") as f:
# Read in file
pdfReader = PyPDF2.PdfFileReader(f)
# Check number of pages
number_of_pages = pdfReader.numPages
print(number_of_pages)
# Get first page
pageObj = pdfReader.getPage(0)
# Extract text from page 1
text = pageObj.extractText()
print(text)
它确实正确获取了页数,因此可以打开PDF。
如果我用repr(text)替换打印(文本)中没有读取的文件,我会得到类似的内容:
"'\\n\\n\\n\\n\\n\\n\\n\\nn\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n'"
奇怪的是,当我使用Adobe增强(OCR)文件时,脚本的性能稍差。它识别了800个文件中的140个,并且仅增强了110个。
PDF是机器可读/可搜索的,因为我能够将文本复制/粘贴到记事本。我用" pdfminer"测试了一些文件。它确实显示了一些文字,但也会引发很多错误。如果可能的话,我喜欢继续使用PyPDF2。
我正在使用的软件规格:
Windows:10.0.15063
Python:3.6.1
PyPDF:1.26.0
Adobe版本:17.009.20058
有人有什么建议吗?非常感谢您的帮助!