tm readPDF: ошибка в файле (con, "r"): не удается открыть соединение

Я попробовал пример кода, рекомендованный в документации tm::readPDF:

library(tm)

if(all(file.exists(Sys.which(c("pdfinfo", "pdftotext"))))) {
    uri <- system.file(file.path("doc", "tm.pdf"), package = "tm")
    pdf <- readPDF(PdftotextOptions = "-layout")(elem = list(uri = uri),
                                                 language = "en",
                                                 id = "id1")
    pdf[1:13]
}

Но я получаю следующую ошибку (которая возникает после вызова функции, возвращаемой readPDF):

Error in file(con, "r") : cannot open the connection
In addition: Warning message:
In file(con, "r") :
  cannot open file 'C:\DOCUME~1\Tomas\LOCALS~1\Temp\RtmpU33iWo\pdfinfo31c2bd5762a': No such file or directory

Обратите внимание, что я установил все двоичные файлы xpdf в текущий каталог (но это обрабатывается if состояние).

РЕДАКТИРОВАТЬ: обнаружил, что это ошибка. Какой будет самый простой обходной путь?

1 ответ

Решение

Сделал некоторую отладку и вижу, что она не работает в tm:::pdfinfo():

status <- system2("pdfinfo", shQuote(normalizePath(file)), 
        stdout = outfile)

Эта команда не создает выходной файл. Согласно стандартному перенаправлению system2 в файл на windows это ошибка!

Другие вопросы по тегам