【问题标题】:How to read line by line in pdf file and create a CSV如何在 pdf 文件中逐行读取并创建 CSV
【发布时间】:2014-11-11 18:17:31
【问题描述】:

这是我的 pdf 我找到了THIS,并用它来废弃我的 pdf。

6 BEDROOMS
NameAddressUnitSizeKeyRentSq FtMove in DateNotesTenant
Prop #
Texan 261009 West 26th3076x3$4,6952,1368/15/14$1,000 Bonus (1) Park -     

它很混乱。还是因为 PDF 的格式不可读?我认为有一种方法可以废弃每一行并通过迭代或其他方式创建包含列的 CSV。

就像用列填充 CSV

T26 | Texan 26          | 1009 West 26th | 307      | 6x3 | ... 
e075| Texan North Campus| 5117 N Lamar   |See below | 6x3 |...

有没有办法解决这个问题?

【问题讨论】:

  • 能否提供实际的PDF文档?

标签: python pdf scrapy pdf-scraping


【解决方案1】:

您使用的代码 sn-p 提供了一些实际上无法使用的数据,我认为这不是要走的路。从 PDF 中抓取通常相当困难,但请查看 pdftables.com:它们提供了一个 API,用于从 PDF 文档中抓取表格,我发现在大多数情况下都有效 - 这是你最好的机会,我想说.

【讨论】:

  • 是的,我看到 pdftables.com 正在运行,但我想创建一个脚本来执行此操作。
  • 他们有一个 API,您可以将其包含在您的脚本中。
【解决方案2】:

您可以使用 Camelot(它是一个 Python 库)创建一个脚本,从 PDF 中提取表格数据并将其导出为 CSV。您可以查看文档:http://camelot-py.readthedocs.io。如果您可以发布指向您的 PDF 的链接,将会很有帮助。这是一个通用代码示例:

>>> import camelot
>>> tables = camelot.read_pdf('file.pdf')
>>> type(tables[0].df)
<class 'pandas.core.frame.DataFrame'>
>>> tables[0].to_csv('file.csv')

免责声明:我是图书馆的作者。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-17
    • 1970-01-01
    • 1970-01-01
    • 2013-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多