首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从格式糟糕的PDF中提取表?

如何从格式糟糕的PDF中提取表?
EN

Stack Overflow用户
提问于 2015-04-22 14:23:10
回答 2查看 116关注 0票数 1

我的客户需要一个CSV,名字,姓,道布,从他们的会计数据库。

问题是,他们的会计软件是“在云中”(因此,在别人的电脑中,世界上的任何人都可以自由访问),这个pdf应用程序所能做的就是生成格式非常糟糕的“欢迎卡pdf",如下所示

代码语言:javascript
复制
hi <newline>
<lots of spaces>my name is %name% <lots of spaces> %surname%
<lots of newlines and spaces to simulate text alignment to the right>I was born in %dob
<newpage>

所以,我所能得到的就是一个500页的PDF,里面有这些无法使用的内容。

有办法从这样的文件中提取数据吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-22 14:34:17

重要的是要知道您是必须多次执行此操作,还是只需执行一次到一个500页的文件。我只能假设一次。

在这种情况下,将PDF转换为XML (如果可能的话)或文本文件(许多可用的转换器--只有google)。

那么,重要的是要知道是否所有的“记录”都是以相同的方式格式化的--格式也是如此:.firstname...lastname...dob...addressline1...(在那里.是你不想要的东西)

是否总是有‘标签’或‘标签’告诉你下一步是‘地址行1’,或者如果一个值被遗漏了,你能分辨出来吗?

如果结构总是相同的,并且您可以判断值是否不在此记录中,那么您就有机会编写regex表达式,将其转换为一种体面的格式。否则,这将是非常困难的,但你可能能够收获很多(如果不是全部)的信息。

票数 2
EN

Stack Overflow用户

发布于 2015-04-22 15:14:12

我做到了!谢谢你的提示,这就是我如何使无用的PDF变成一个有用的CSV:

  1. 我使用cloudconvert.com将PDF转换为TXT。
  2. 我观察了这个文件是如何使用cat -A
  3. 我注意到在所有有用的数据之前都有一条换行符
  4. 我注意到每个页面都以表单提要字符结尾。
  5. 我用;替换了每个换行符
  6. 我用换行符替换了每个表单提要字符。
  7. 我在Libreoffice中导入了(新制作的) CSV,并删除了无用的列
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29800598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档