猿问

如何在python脚本和外部命令行中使用pdfminer.six的pdf2txt.py?

我知道如何在命令行中使用 pdfminer.six 的 pdf2txt.py 工具;但是,我有很多 PDF 文件要转换为 txt 文件,我不能在命令行中一一执行。我还没有找到如何在实际的 python 脚本中使用这个工具。有任何想法吗?


红颜莎娜
浏览 96回答 1
1回答

哆啦的时光机

好消息是您可以使用 PDFMiner 库重新创建您可能在命令行上使用 pdf2text 运行的任何属性/命令。请参阅下面的我使用的基本示例:from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreterfrom pdfminer.converter import TextConverterfrom pdfminer.layout import LAParamsfrom pdfminer.pdfpage import PDFPagefrom io import BytesIOdef pdf_to_text(path):    manager = PDFResourceManager()    retstr = BytesIO()    layout = LAParams(all_texts=True)    device = TextConverter(manager, retstr, laparams=layout)    filepath = open(path, 'rb')    interpreter = PDFPageInterpreter(manager, device)    for page in PDFPage.get_pages(filepath, check_extractable=True):        interpreter.process_page(page)    text = retstr.getvalue()    filepath.close()    device.close()    retstr.close()    return textif __name__ == "__main__":    text = pdf_to_text("yourfile.pdf")    print(text)如果您需要应用页码或密码,这些是 PDFPage.get_pages 中的可选参数。同样,如果您需要更改布局,例如 all-texts 或 margin-size,LAParams 初始值设定项有可选属性
随时随地看视频慕课网APP

相关分类

Python
我要回答