我正在寻找在Python中将PDF转换为纯文本的最简单方法。
PyPDF2似乎非常简单,这就是我所拥有的:
def test_pdf(filename):
import PyPDF2
pdf = PyPDF2.PdfFileReader(open(filename, "rb"))
for page in pdf.pages:
print page.extractText()
但它给了我:
InChapter5wepresentandevaluateourresults,togetherwiththetestenvironment.
如何使用PyPDF从该PDF中提取单词?有没有不同的方式(另一个适用于此的库)?
答案 0 :(得分:0)
我使用成功PDFMiner,您可以使用它来解析和提取pdf文档中的文本。
更具体地说,有一个pdf2txt.py
模块,您可以使用它来提取文本。安装很简单:pdfminer-xxx#python setup.py install
和bash或cmd一个简单的pdf2txt.py -o Application.txt Reference/Application.pdf
命令可以解决问题。
在上面提到的oneliner application.pdf
是你的目标pdf,你要处理的那个和application.txt
是将要生成的文件。
此外,对于更复杂的任务,您可以查看api并根据需要进行修改。
编辑:我根据我的个人经验回答,就是这样。我没有理由“推广”拟议的工具。我希望有帮助
edit2:类似的东西对我有用。
# -*- coding: utf-8 -*-
import os
import re
dirpath = 'path\\to\\dir'
filenames = os.listdir(dirpath)
nb = 0
open('path\\to\\dir\\file.txt', 'w') as outfile:
for fname in filenames:
nb = nb+1
print fname
print nb
currentfile = os.path.join(dirpath, fname)
open(currentfile) as infile:
for line in infile:
outfile.write(line)