ホーム>source

複数ページのPDFから単一の文字列を取得するには、次のようにします。

<前>ウィズウィズ

結果は、シングルページ (ドキュメントの最後のページ)-に応じてPyPDF2ドキュメント。私がこの方法を適用したのは、PDF全体を読むように勧めている人を読んだことがあるからです。私の場合はうまくいきません。

当然、これは基本的な操作であり、経験が足りないことをあらかじめお詫びします。 Tika、PDFMiner、Textractのような他のソリューションを試しましたが、今のところPyPDFだけが私を許してくれているようです。

任意の助けいただければ幸いです。

更新:

提案されたように、私は import PyPDF2 pdfFileObject = open('sample.pdf', 'rb') pdfReader = PyPDF2.PdfFileReader(pdfFileObject) count = pdfReader.numPages for i in range(count): page = pdfReader.getPage(i) output = page.extractText() output を定義しましたリストとして、次に(私が思ったように)次のようなループ内のすべてのページに追加されます。

<前>ウィズウィズ

結果は、 output のようなリスト内の単一の文字列だと思いました

for i in range(count): page = pdfReader.getPage(i) output = [] output.append(page.extractText())
あなたの答え
  • 解決した方法 # 1

    この行が原因である可能性があります:

    <前>ウィズウィズ

    代わりにこれを試してください:

    <前>ウィズウィズ

    コードでは、「出力」変数の値に追加するのではなく、値を上書きしているためです。 forループの前に「出力」変数を宣言することを忘れないでください。だから output = page.extractText()   output += page.extractText() の前

    output = ''

関連記事

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ 春のデータジオードリージョンにはローカルスコープがあり、リモートリージョンイベントをリッスンできません