一般的なプログラミングではありませんが、私はpythonとpdfminerの両方に慣れていません。Windows 7 と cygwin で Python 2.7 を使用しています。
PDFから特定の情報を抽出するスクリプトをbeautifulsoupで書いています。そのために、pdf2txt を使用して、この pdf の .txt ファイルと .html ファイルの両方を作成し、テストに使用しました。通常のコマンドのみ:
python pdf2txt.py -o output.txt 入力.pdf
python pdf2txt.py -o 出力.html 入力.pdf
どちらも同じ問題を抱えています。テキストの一部の行が乱れて表示されます。この pdf で pdf2txt を実行すると、私の言いたいことがわかります: (編集: 元のサイトを見つけました。) このページのアメリカ領サモアのものです: https://www.iamovers.org/ResourcesPublications/ShipperGuides.aspx?navItemNumber =580
たとえば、これは pdf のページ 1 の 1 つのセクションの正しいレイアウトです。
必要書類
パスポートのコピー (3299 に記載されている家族全員のパスポートが必要な港もあります)
Form CF-3299
Supplemental Declaration (ほとんどの港で必要)
英語の詳細な目録
ビザのコピー (非米国市民/永住者の場合) / 永住権のコピー居住者カード
I-94 スタンプ /
船荷証券 (OBL) / 航空貨物運送状 (AWB) のカード コピー
DS-1504 (外交官)
A-1 ビザ (外交官)
輸入業者セキュリティ ファイリング (ISF)
これは、pdf2txt.py を使用した txt と html の両方の変換で得られる方法です。
必要書類
パスポートのコピー (3299 に記載されている家族全員のパスポートが必要な港もあります)
Form CF-3299
Supplemental Declaration (ほとんどの港で必要)
英語の詳細な目録
ビザのコピー (非米国市民/永住者の場合) / 永住権のコピー在留カード船荷証券 (OBL) / 航空運送状 (AWB) のコピー
DS-1504 フォーム (外交官)
A-1 ビザ (外交官)輸入者セキュリティ ファイリング (ISF)
I-94 スタンプ・カード
何らかの理由で、文字「I」で始まる行は常にその場所から取り出され、次の空白行または前の空白行に配置されます。他のいくつかのキャラクターも同様に発生し続けています。
この問題をここに投稿しました: https://github.com/euske/pdfminer/issues/121
それはpdfminerの問題でなければなりません。パッケージに変更を加えるのに十分なほどPythonをまだよく知りません。これを修正する方法を知っている人はいますか?