从PDF中提取文本会在R中返回奇怪的结果

时间:2018-03-03 08:37:41

标签: r pdf text-mining

我正在尝试从一堆PDF中挖掘文本,但是当我使用pdf_text包中的pdftools将它们读入R时,它生成的文本只是奇怪而且实际上并没有什么在PDF文件上。 Onedrive链接:https://1drv.ms/b/s!AlTtlgN0WIa3s2qeq4yrv9fUu-Z6。 这是我使用的示例代码:

library(pdftools)
pdf1 <- pdf_text("https://dl.dropboxusercontent.com/s/308gpdijvnw18mf/2018REQ118030709.pdf?dl=0")
pdf1   

     ## c("(’-*)&&$(&’-’’’’)*,&’$)’&/.\r\n     itiCHMON&\\     4Q\\a WN BQKPUWVL
     ##FQZOQVQI                                          )’(/ 7QZ[\\ 9ITN BMIT
     ##6[\\I\\M DI‘ 3QTT\r\n                    5Q^Q[QWV WN 4WTTMK\\QWV[\r\n                   
     ##FE 8_h -10+0\r\n                    HYSX]_^T’ L7 -.-1,(10+0                                                 
     ##3QTT >]UJMZ (/’*’.’0\r\n   IBKHHO F7L;HI ?D9                                                        
     ##@TMI[M ZMKWZL 3QTT >]UJMZ QV UMUW [MK\\QWV WN KPMKS\r\n   ,0+, L7BB;O H:\r\n  
     ##H?9>CED: L7 -.---(0/+1                                                         
     ##IVL QVKT]LM QV ITT WVTQVM JIVSQVO \\ZIV[IK\\QWV[\r\n                                
     ##@ZWXMZ\\a :VNWZUI\\QWV                                                          
     ##DI‘ :VNWZUI\\QWV\r\n     JQh OUQb5                                                          
     ##-+,3 J_dQ\\ 7TZecdUT 7^^eQ\\ 9XQbWUc5                                     
     ##!,+’/+/)++\r\n     3QTT >]UJMZ1                                .
     ##.. <truncated>

我对R很新,知道我可能做错了什么? 对此,任何帮助都将不胜感激。

编辑:我已经使用工作网址替换了网址,并且还包含了我得到的结果。

1 个答案:

答案 0 :(得分:3)

你pdf是一个pdf图像。它看起来像扫描。 pdftools无法将此直接转换为文本。您可以使用包tesseract获取数据,并pdftools将其转换为png。

下面的代码会将第一页转换为文本。我会让你做其余的页面。 Rembember认为OCR对文本并不完美。你需要检查结果。

library(pdftools)
library(tesseract)
pdf_convert("https://dl.dropboxusercontent.com/s/308gpdijvnw18mf/2018REQ118030709.pdf?dl=0", 
                       pages = 1, 
                       dpi = 600, 
                       filenames = "page1.png")
text <- ocr("page1.png")
cat(text)

更多信息可在tesseract插图中找到。

您可能还想删除对此pdf的访问权限。我不确定这些数据是否应公开