strtme中的R tm包readPDF错误(d,fmt):输入字符串太长

时间:2016-04-22 17:48:03

标签: r pdf tm

我想使用tm包对this website上的文件进行文本挖掘。我使用以下代码将其中一个文件(即abell.pdf)下载到我的工作目录并尝试存储内容:

library("tm")
url <- "https://baltimore2006to2010acsprofiles.files.wordpress.com/2014/07/abell.pdf"
filename <- "abell.pdf"
download.file(url = url, destfile = filename, method = "curl")

doc <- readPDF(control = list(text = "-layout"))(elem = list(uri = filename),
                                                 language = "en", id = "id1")

但是我收到以下错误和警告:

Error in strptime(d, fmt) : input string is too long
In addition: Warning messages:
1: In grepl(re, lines) : input string 1 is invalid in this locale
2: In grepl(re, lines) : input string 2 is invalid in this locale

pdfs不是特别长(5页,978 KB),我已经能够成功使用readPDF函数读取我的Mac OSX上的其他pdf文件。我最想要的信息(2010年人口普查的总人口)在每个pdf的第一页上,所以我尝试将pdf缩短到第一页,但我得到了同样的信息。

我是tm包的新手,所以如果我遗漏了一些明显的东西,我会道歉。非常感谢任何帮助!

1 个答案:

答案 0 :(得分:2)

根据我所读到的内容,此错误与&#34; readPDF&#34;的方式有关。函数尝试为您要导入的文件创建元数据。无论如何,您可以使用&#34; info&#34;更改元数据信息。选项。例如,我通常通过以下方式修改命令来避免此错误(使用您的代码):

doc <- readPDF(control = list(info="-f",text = "-layout"))(elem = list(uri = filename),language = "en", id = "id1")

添加&#34; info =&#34; -f&#34;&#34;是唯一的变化。这并没有真正修复&#34;问题,但它绕过了错误。干杯:)