【问题标题】:Installing pdftotext on Windows (for use with R, 'tm' package)在 Windows 上安装 pdftotext(用于 R,'tm' 包)
【发布时间】:2016-03-23 11:49:14
【问题描述】:

我在使用 R 'tm' 包读取 .pdf 文件时遇到问题。 具体来说,我尝试运行以下代码:

library(tm)
filename = "myfile.pdf"

tmp1 <- readPDF(PdftotextOptions="-layout")
doc <- tmp1(elem=list(uri=filename),language="en",id="id1")
doc[1:15]

...这给了我错误:

Error in readPDF(PdftotextOptions = "-layout") : 
  unused argument (PdftotextOptions = "-layout")

我认为这是因为我的机器上没有正确安装 pdftotext 程序(xpdf 的一部分,http://www.foolabs.com/xpdf/download.html),因此 R 无法访问它。

正确安装 xpdf/pdftotext 以执行上述 R 代码的步骤是什么?(我知道已经发布了类似的问题,但它们没有解决相同的问题)

【问题讨论】:

  • 如果您在没有选项-layout 的情况下调用readPDF 会发生什么?
  • 尝试使用 pdftools 包。这样就避免了安装 xpdf 的麻烦。
  • @Karsten:在没有 -layout 设置的情况下运行代码会给我以下错误:>>> System2 中的错误(“pdftotext”,c(control$text,shQuote(x),“-” ), stdout = TRUE) : '"pdftotext"' 未找到
  • @user3641140 我会研究 pdftools - 但安装 xpdf 真的很麻烦吗?
  • 您是否将 xpdf 路径添加到环境变量中?

标签: r tm pdftotext xpdf


【解决方案1】:

PdftotextOptions 不是readPDF 的参数。 readPDF 有一个 control 参数,它需要一个列表。所以正确的用法是:

if(all(file.exists(Sys.which(c("pdfinfo", "pdftotext"))))) { 
  tmp1 <- readPDF(control = list(text = "-layout"))
  doc <- tmp1(elem=list(uri=filename),language="en",id="id1")
}

【讨论】:

  • 乍一看似乎可行。我会在进一步调查后很快接受您的回答。
【解决方案2】:

设置

setwd('C:/xpdf/bin64')                 

它对我有用。

【讨论】:

    猜你喜欢
    • 2019-02-19
    • 2016-07-27
    • 1970-01-01
    • 2017-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多