コマンドラインでpdfminer.sixのpdf2txt.pyツールを使用する方法を知っています。ただし、txtファイルに変換する多くのPDFファイルがあり、コマンドラインで1つずつ実行することはできません。実際にこのツールを使用する方法は見つかりませんでした。 python script。任意のアイデア?
良いニュースは、PDFMinerライブラリを使用して、コマンドラインでpdf2textを使用して実行する可能性のある属性/コマンドを再作成できることです。私が使用する基本的な例については、以下を参照してください。
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from io import BytesIO
def 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 text
if __name__ == "__main__":
text = pdf_to_text("yourfile.pdf")
print(text)
ページ番号またはパスワードを適用する必要がある場合、これらはPDFPage.get_pagesのオプションのパラメーターです。同様に、all-textsやmargin-sizeなどのレイアウト変更を行う必要がある場合、LAParams初期化子にはオプションの属性があります