Camelot ライブラリで問題が発生しています
PDF からデータを抽出しています。コードは前の 23 ページで「正常に」実行されていますが、この場合、テキスト/テーブルの末尾の解析に失敗しています。
問題は、文字列が長すぎてテーブルの境界に達していることだと思います
「ストリーム」も試しましたが、最悪の結果になりました
PDFソースデータ
PDF出力レイアウト
解析された出力は次のようになります
"ALT4945\n24 V"
"70\/140 A ALT5860\n12 V\n90 A"
望ましい出力は
"ALT4945\n24 V 70\/140 A"
"ALT5860\n12 V\n90 A"
前のページで正しく機能する最初のコードは
tables = camelot.read_pdf("CROSSREFERENCE.pdf", pages=wPAGES, flavor="lattice")
Web サイト Camelot Doc からhttps://camelot-py.readthedocs.io/en/master/api.html pdf パーサーで可能な構成を取得します。
"" PARAMS for lattice
line_scale (default: 15)
copy_text ((default: None))
shift_text (default: ['l', 't'])
line_tol (default: 2)
joint_tol (default: 2)
threshold_blocksize (default: 15)
threshold_constant (default: -2)
iterations (default: 0)
resolution (default: 300)
"""
次に、その問題を取得し、より多くのパラメータで「再生」を解決しようとしましたが、勝者が見つかりませんでした
tables = camelot.read_pdf("CROSSREFERENCE.pdf", pages=wPAGES, flavor="lattice", split_text=True, resolution=720, line_scale=250, line_tol=3, joint_tol=3, threshold_blocksize=15)
tables = camelot.read_pdf("CROSSREFERENCE.pdf", pages=wPAGES, flavor="lattice", split_text=True, resolution=720, line_scale=250, line_tol=1, joint_tol=1, threshold_blocksize=3)
それを避けるために、パラメータについてアドバイスをもらえますか??
ありがとう
edit1: PDF ソース : https://www.siom.it/images/catalogo-motorini-alter.pdf (24 ページ)