第11回 Python Night

プレミアムフライデーの夜にノンプロ研のみんなでワイワイPythonする会です! 今回は「Pythonのpdf操作系ライブラリで遊んでみよう!」ハンズオンです。後半でopenAI APIでのpdf読み込みについての話もあります。
1
ホッタ @Hotta3216

今日は月に1度のPython Nightです! pdf操作系ライブラリで遊びます~ openAI APIでのpdf読み込みについての話もありますよ #ノンプロ研 #PythonNight pic.twitter.com/yZxAbhBZeo

2023-11-24 19:54:18
拡大
ホッタ @Hotta3216

ブログ版アドベントカレンダーは無事埋まりそうで何より #ノンプロ研 #PythonNight

2023-11-24 20:00:07
な~@ぱいそん🐍 @PythonNao703

Pythonの卒業LTに行き詰まりを感じている(なにもしていない)ので PythonNightのホストをしてみることにしました! #ノンプロ研 #PythonNight

2023-11-24 20:02:21
な~@ぱいそん🐍 @PythonNao703

お知らせコーナーがおかしい気がするが 直せるのか?正解がわからない・・・ #ノンプロ研 #PythonNight

2023-11-24 20:02:40
こはた|Python、GAS勉強中 @kohaku935

月末の金曜日に開催している、#PythonNight に参加してます。 今日はPDFライブラリで遊びます。 #ノンプロ研

2023-11-24 20:06:07
kudou @kudou32323

今日はPythonNight! PDF読み取りについてがんばるぞー!! #ノンプロ研 #PythonNight

2023-11-24 20:09:03
な~@ぱいそん🐍 @PythonNao703

PDF操作系のライブラリはたくさんあるそう #ノンプロ研 #PythonNight その中のいくつかを使ってみましょう✨

2023-11-24 20:12:45
こはた|Python、GAS勉強中 @kohaku935

PythonのPDFライブラリはたくさんあります。 なんでこんなにたくさんあるの? PDFは、とっても複雑な仕様のため、1つのライブラリで全部カバーできないので、複数あるらしい。 #ノンプロ研 #PythonNight

2023-11-24 20:14:01
な~@ぱいそん🐍 @PythonNao703

標準ではPDFが操作できない。 ライブラリをインストール・インポートする必要がある。 #ノンプロ研 #PythonNight PDFは非常に複雑なので、1つのライブラリで すべての機能をカバーできるわけではないそう。

2023-11-24 20:14:10
kudou @kudou32323

PDFは一つのライブラリですべての機能をカバーするのは難しいらしい・・・が、検証結果ライブラリがパワーアップしていた感触があった。 #ノンプロ研 #PythonNight

2023-11-24 20:14:56
kudou @kudou32323

1つ目のライブラリはpypdf。 テキストは正しい内容でとれてる! 画像も一つずつファイル名つけてとれてる! すごい!! #ノンプロ研 #PythonNight

2023-11-24 20:29:16
kudou @kudou32323

2つのPDFのマージもできる! PdfWriterの機能は回転したりPWつけたり結構いろいろあるらしい。 #ノンプロ研 #PythonNight

2023-11-24 20:32:46
kudou @kudou32323

続いてpdfminer。 こちらのほうがキレイに抜き出せる。 ライブラリによってスペースが入ったりなど出力が若干変わる。 #ノンプロ研 #PythonNight

2023-11-24 20:35:32
kudou @kudou32323

tabulaライブラリでPDF内の表をデータフレームで抜き出せる。 ただし、ページがまたがるとデータフレームも分割されてしまうので注意!! #ノンプロ研 #PythonNight

2023-11-24 20:41:18
こはた|Python、GAS勉強中 @kohaku935

tabula-pyライブラリで、pandasのDataFrameでテーブルが取得できる。 セル結合されていると、うまく取得できないので、加工が必要。 #ノンプロ研 #PythonNight

2023-11-24 20:44:06
kudou @kudou32323

セル結合している表はうまくデータフレームにはまらないので加工が必要 ⇒pandasの知識が必要だったり、そもそもほしい項目名が取れていないときもあるので要注意!! #ノンプロ研 #PythonNight

2023-11-24 20:44:59
kudou @kudou32323

続いてPyMuPDF。 pdfからテキスト抽出、変換などができる高性能ライブラリでできることたくさんあるらしい。 #ノンプロ研 #PythonNight

2023-11-24 20:48:08
kudou @kudou32323

ライブラリ名はfitz?らしい。 「import fitz」でOK。 #ノンプロ研 #PythonNight

2023-11-24 20:49:46
kudou @kudou32323

fitzはurlからPDF読み取りはできないので、WEBのPDFファイルの読み込みがしたい場合は一旦ダウンロードが必要 #ノンプロ研 #PythonNight

2023-11-24 20:54:19
kudou @kudou32323

PDFファイルをページごとにpngファイルに変換できる。 #ノンプロ研 #PythonNight

2023-11-24 20:58:48