テーブルデータの抽出にキャメロットを使用していますが、PDFの一部としてヘッダーが抽出されていません。
以下のターゲットPDFリンクとターゲットテーブルの添付はページ番号3と4にあり、抽出する必要があります。
https://drive.google.com/file/d/1xniTIwpnNIdA_k4xvEARlVH97Lk-K2Yr/view?usp=sharing
キャメロットのドキュメントを見ましたが、問題は「短い行の検出」に関連していると思います
https://camelot-py.readthedocs.io/en/master/user/advanced.html#detect-short-lines
ただし、line_size_scalingパラメーターを微調整しても問題を解決できません。
手伝ってください。
を使用して、検出されたテーブル境界を3ページにプロットしました$ camelot -p 3 lattice -plot contour 007.pdf
。キャメロットが検出されたテーブル境界にヘッダー行を含めていないようです[バグ1](下の画像を参照)。次に、table_areas
キーワード引数をで使用しようとしflavor='lattice'
ましたが、指定されたテーブル境界に行が含まれていませんでした[バグ2]。これらを課題追跡システムに#200および#201として追加しました。
でtable_areas
キーワード引数を使用flavor='stream'
して、テーブルを取り出すことができます。
CLIの使用: $ camelot -p 3 --output 007.csv --format csv stream -T 60,770,520,400 007.pdf
APIの使用: tables = camelot.read_pdf('007.pdf', pages='3', flavor='stream', table_areas=['60,770,520,400'])
ここで説明する手順を使用して、テーブルの境界座標を見つけることができます:https://camelot-py.readthedocs.io/en/master/user/advanced.html#visual-debugging
お役に立てば幸いです。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加