2017-05-10 14 views
0

(Python 3.4.3)PDFから番号を抽出するには?

こんにちは、私はPythonの新機能で、PDFファイルから数値を抽出したいと思います。詳細については、大学で承認された者のスコアを示すヒストグラムを作成したかったのです。そのため、これらのスコアで誰も承認されないため、500未満と900以上の数値は考慮しないでください。

答えて

0

デフォルトではPythonはそれを読むことができないので、まずPDFパーサーが必要です。答えがここに掲載されましたPython module for converting PDF to textは、PDFMINERを使用するように提案されました - http://www.unixuser.org/~euske/python/pdfminer/index.html

しかし、数字の表現方法の例は提供されていません。これらの数字を抽出する方法を規則で定義するには、regex/patternsを使用してカスタム・ライン・パーサを作成する必要があります。難易度は主にPDFに生の統計データのみが含まれているかどうかによって異なります。そうでない場合は、すべての数値を取らないように注意する必要があります。つまり、実際に統計データを参照するのではなく、

あなたは正規表現は、あなたに新しいものである場合は、あなたが学び、http://regexr.com/ ここでそれを試すことができ、ここでhttps://docs.python.org/3/library/re.html

からPythonで正規表現についての詳細を学ぶことができます。

+0

よろしくお願いいたします。数字は731.9、655.4、701.8などの浮動小数点数です。それらは600から900までの範囲です。私は私の質問でそれはpdfのデータだけではないので言った。 – AtAn

+0

あなたができることは、PDFの内容をhttp://regexr.com/に貼り付けることです。そこから正規表現を構築してみましょう。たとえば、[AZ]を[600-900]に変更して試してみてください起こる一致するパターンが強調表示されます。このパターンはあなたが望むものとまったく同じではありませんが、正しいパターンを自分で解決する必要があります。私はちょうど正しい方向にあなたを指しています。最後に、抽出したいものがあれば、その式をPythonに入れることができます。その後、データの処理を開始できます。正規表現を作るのは最初は難しいかもしれませんが、あきらめてはいけません:) – Jointts

+0

正規表現を使いました。幸いにも、私は大した問題なく、私が望む数字を得ました。次に、出力とともに[ヒストグラム](https://i.imgur.com/tY7BN1e.png)を作成しました。 – AtAn

関連する問題