python - pdf到csv文件转换的文本内容-如何?
问题描述
我想将 PDF 文件作为输入。作为输出文件,我希望显示一个 csv 文件。因此,pdf 文件中的所有文本数据都应转换为 csv 文件。但我不明白这是怎么发生的......我最早需要你的帮助,因为我试图这样做但无法做到。
我所做的是使用了一个名为 Tabula-py 的库,它将 pdf 转换为 csv 文件。它确实创建了 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 文件。
解决方案
我自己找到了这个问题的答案 为了解决这个问题,我想出了将 pdf 文件转换为文本文件的方法。然后我将此文本文件转换为 csv 文件。这是我的代码。
转换.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()
推荐阅读
- d3.js - 在 d3 中使用组元素 (g) 时不呈现图案,但在作为单个 SVG 制作时呈现
- reactjs - 对反应组件的更改未显示在视图中 - onChange 中显示了一个字符更改
- reactjs - 反应参考:什么等于 document.querySelectorAll
- linux - 将参数从一个批处理文件传递到另一个不工作
- php - 如何将 html 风格化表与 php 和 sql 连接起来
- mysql - 更改 MySql 的字符集
- mysql - 在删除mysql之前创建触发器
- python - PySpark:将“字符串整数”列转换为 IntegerType
- oauth - 使用 G Suite 进行基于角色的授权
- r - 删除向量列表中的空向量