我有231个pdf文件,想把它们中的每一个都转换成字符串格式。随后,我将这些字符串中的每一个都保存到一个txt文件中。
我能够为此创建一段代码(当我为较少数量的元素运行代码时,我检查了它是否正常工作),但是python甚至在10h之后也没有完成程序的执行!
我使用"for loop“尝试了相同的代码,但它也太慢了。你知道我怎么才能让这段代码更快吗?
下面是我的代码:
from pdfminer.pdfinterp import PDFResourceManager,
PDFPageInterpreter#process_pdf
from pdfminer.pdfpage import PDFPage
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from io import StringIO
def pdf_to_text(pdfname):
# PDFMiner boilerplate
rsrcmgr = PDFResourceManager()
sio = StringIO()
codec = 'utf-8'
laparams = LAParams()
device = TextConverter(rsrcmgr, sio, codec=codec, laparams=laparams)
interpreter = PDFPageInterpreter(rsrcmgr, device)
# Extract text
fp = open(pdfname, 'rb')
for page in PDFPage.get_pages(fp):
interpreter.process_page(page)
fp.close()
# Get text from StringIO
text = sio.getvalue()
# Cleanup
device.close()
sio.close()
return text
lista2 = [pdf_to_text(k) for k in lista1]
其中lista1
是我的231个pdf的列表
pdf文件是从这个website中提取出来的。我只选择了名称中包含单词"Livro“的文件。
https://stackoverflow.com/questions/50776263
复制相似问题