r-如果我已经知道样本应该是什么,我该如何确定文本的编码



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

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

Suklesh Dandona

如果我只把jibberish部分粘贴到一个文本文件中,然后尝试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

这不是编码问题,您正在处理一个模糊的PDF,这可能是一种故意让人们为这些信息的数据库付费的措施。这是将我们的文档作为图灵完全语言的程序在Interweb上传输的功能之一。

你最好的选择是将其渲染为图像,然后使用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 

最新更新