2

PDFファイルを入力として取りたいです。出力ファイルとして csv ファイルを表示したい。そのため、pdf ファイルにあるすべてのテキスト データを csv ファイルに変換する必要があります。しかし、私はこれがどのように起こるのか理解していません..私はやろうとしましたができなかったので、できるだけ早くあなたの助けが必要です.

私が行ったことは、pdfをcsvファイルに変換するTabula-pyというライブラリを使用することです。csv 形式を作成しますが、pdf ファイルから csv ファイルにコピーされるコンテンツはありません。

コードはこちら

from tabula import convert_into,read_pdf
import tabula
df = tabula.read_pdf("crimestory.pdf", spreadsheet=True, 
                     pages='all',output_format="csv")
df.to_csv('crimestoryy.csv', index=False)

出力は、データが存在する csv ファイルとして提供されます。私が得ているのは空のcsvファイルです。

4

2 に答える 2

2

私は自分でこの質問に対する答えを見つけました この問題に取り組むために、pdfファイルをテキストファイルに変換することを思いつきました。次に、このテキスト ファイルを csv ファイルに変換しました。コードは次のとおりです。

conversion.py

import os.path
import csv
import pdftotext
#Load your PDF
with open("crimestory.pdf", "rb") as f:
   pdf = pdftotext.PDF(f)

# Save all text to a txt file.
with open('crimestory.txt', 'w') as f:
    f.write("\n\n".join(pdf))

save_path = "/home/mayureshk/PycharmProjects/NLP/"

completeName_in = os.path.join(save_path, 'crimestory' + '.txt')
completeName_out = os.path.join(save_path, 'crimestoryycsv' + '.csv')

file1 = open(completeName_in)
In_text = csv.reader(file1, delimiter=',')

file2 = open(completeName_out, 'w')
out_csv = csv.writer(file2)

file3 = out_csv.writerows(In_text)

file1.close()
file2.close()
于 2019-09-23T07:21:46.633 に答える