1

PDFから特定のテーブルを抽出しようとしています.PDFは下の画像のようになります

ここに画像の説明を入力

Pythonでさまざまなライブラリを試してみましたが、

tabula-py を使用

from tabula import read_pdf
from tabulate import tabulate 
df = read_pdf("./tmp/pdf/Food Calories List.pdf")
df

PyPDF2 で

pdf_file = open("./tmp/pdf/Food Calories List.pdf", 'rb')
read_pdf = PyPDF2.PdfFileReader(pdf_file)
number_of_pages = read_pdf.getNumPages()
page = read_pdf.getPage(0)
page_content = page.extractText()
        
data = page_content
df = pd.DataFrame([x.split(';') for x in data.split('\n')])
        
aux = page_content
df = pd.DataFrame([x.split(';') for x in aux.split('\n')])

テクスチャと美しいスープでも、私が直面している問題は、出力形式が混乱していることです。このテーブルをより良い形式で抽出する方法はありますか?

4

3 に答える 3

0

ページ上の単語の位置に基づいて動的に生成できるタブラ テンプレートの使用を検討します。これにより、考慮すべき領域に関するより多くのガイダンスが表に表示され、より正確な抽出につながります。tabula.read_pdf_with_templateここに文書化されているように参照してください: https://tabula-py.readthedocs.io/en/latest/tabula.html#tabula.io.read_pdf_with_template

于 2020-08-10T16:11:09.070 に答える