V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
FinalDream
V2EX  ›  Java

怎么从PDF中取出数据

  •  1
     
  •   FinalDream · 2013-11-22 21:57:13 +08:00 · 3739 次点击
    这是一个创建于 4019 天前的主题,其中的信息可能已经有所发展或是发生改变。
    需要取出标题,章节信息,有这方面的开源包吗
    6 条回复    1970-01-01 08:00:00 +08:00
    bombless
        1
    bombless  
       2013-11-23 01:38:18 +08:00
    在一个C++群里面看过讨论。
    似乎所有文字都是一个一个按坐标定位上去的,所以第一步是对整个排版做分析,把页面分块成几个章节。总之就是没有完全可靠的方法,特别是在排版比较灵活或者在一些微妙的地方分页了的情况特别容易出错。
    crazybubble
        2
    crazybubble  
       2013-11-23 08:29:18 +08:00
    parse PDF的话有这样的包:http://www.unixuser.org/~euske/python/pdfminer/
    只不过因为某些奇怪的原因,所有fi连在一起的情况,会被parse成一个奇怪的unicode
    sun1991
        3
    sun1991  
       2013-11-23 18:09:42 +08:00
    pdf是没有标题, 章节信息的。 所有的字符都是按照坐标画到屏幕上去的。 我还碰到pdf过为了显示粗体, 在横向纵向坐标上微微偏移一点位置反复画同一段文字的。。。
    FinalDream
        4
    FinalDream  
    OP
       2013-11-23 21:01:43 +08:00
    我试着按坐标字体去分析章节信息,需要处理的PDF排版基本是固定的,现在主要不知道表格怎么去处理
    starfish
        5
    starfish  
       2013-11-24 13:01:09 +08:00
    如果用java的话,这方面的开源库很多的。例如,apache pdf-box, iText等。google一下有一堆。我以前用过apache tika来抽取文档中文本信息,tika用的是pdf-box,效果还是不错的。
    FinalDream
        6
    FinalDream  
    OP
       2013-12-04 15:37:06 +08:00 via iPhone
    @starfish PDF-box , itext 都只能提取出文字,没有其它任何信息,我需要标题、章节信息
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   914 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 21:50 · PVG 05:50 · LAX 13:50 · JFK 16:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.