0

我正在尝试以 PDF 格式抓取医生姓名列表。该文件似乎采用混合编码。

当我复制/粘贴一个医生的名字(第 51 页)时,我得到了这个:

丹多纳,苏克雷什 </p>

如果我只将乱码部分粘贴到文本文件并尝试 enca,我会得到:

enca -L none CHC_test.txt 
Universal transformation format 8 bits; UTF-8

这不是。

这里的皱纹使这与以前的问题不重复的是,如果我只是在 PDF 查看器中查看文件,我可以看到地址。它是(输入):1601 Main St Suite 306

那么如何转换这个文件中的地址呢? enca似乎没有采用已知的文本字符串。我想我可以通过iconv编程方式运行每一个支持的编码,看看结果是否等于我在下面输入的内容。由于 R 有一个iconv接口,我可能会这样做,但也许有人有更好的解决方案?

我知道关于编码的常见警告:无法确定,unicode 不是编码等。我保证,我读过 Joel。:-D

4

1 回答 1

1

这不是一个编码问题,您正在处理一个混淆的 PDF,这可能是为了让人们为这些信息的数据库付费而故意采取的措施。这是将我们的文档作为图灵完备语言的程序在互联网上传输的特性之一。

最好的办法是将其渲染为图像,然后使用 OCR 进行解析,这在我的测试中效果很好(使用ImageMagick转换为 300dpi PNG,并在 Linux 上使用楔形文字解析它们):

themel@kallisti: ~/so $ grep Street cuneiform-out.txt 
Adoue Street 
7930 Broadway Street Suite 
6516 Broadway Street Suite 
6516 Broadway Street Suite 
218 East House Street 
303 North Mckinney Street 
826 South Meyer Street 
于 2012-09-12T06:45:44.987 回答