(विंडोज 7/आर संस्करण 3.0.1)टीएम पैकेज से readPDF का उपयोग कर
आदेशों नीचे और जिसके परिणामस्वरूप त्रुटि एक पीडीएफ पढ़ने का प्रयास करते समय त्रुटि ?
संपादित मैं
(बेन ने सुझाव दिया और here बताया गया है)
मैं Xpdf C:\Program Files\xpdf64
को C:\Program Files (x86)\xpdf32
के लिए 32 बिट संस्करण और 64 बिट संस्करण की नकल की डाउनलोड किया पर्यावरण चर pdfinfo
और pdftotext
संबंधित निष्पादनयोग्य या तो 32 बिट (आर 32 बिट के साथ परीक्षण) या 64 बिट के लिए बात कर रहे हैं (आर 64 बिट के साथ परीक्षण)
संपादित द्वितीय
एक बहुत भ्रमित अवलोकन एक से शुरू कि है ताजा सत्र (टीएम लोड नहीं) अकेले पिछले आदेश त्रुटि उत्पन्न करेगा:
> dat <- pdf(elem = list(uri = "17214.pdf"), language="de", id="id1")
Error in file(con, "r") : cannot open the connection
In addition: Warning message:
In file(con, "r") :
cannot open file 'C:\Users\Raffael\AppData\Local\Temp\RtmpKi5GnL
\pdfinfode8283c422f': No such file or directory
मैं इस सब पर समझ में नहीं आता क्योंकि समारोह चर नहीं है अभी तक tm.readPDF द्वारा परिभाषित किया गया है। नीचे आप मिल जाएगा समारोह पीडीएफ करने के लिए "स्वाभाविक रूप से" और को संदर्भित करता है क्या tm.readPDF द्वारा दिया जाता है:
> pdf
function (elem, language, id)
{
meta <- tm:::pdfinfo(elem$uri)
content <- system2("pdftotext", c(PdftotextOptions, shQuote(elem$uri),
"-"), stdout = TRUE)
PlainTextDocument(content, meta$Author, meta$CreationDate,
meta$Subject, meta$Title, id, meta$Creator, language)
}
<environment: 0x0674bd8c>
> library(tm)
> pdf <- readPDF(PdftotextOptions = "-layout")
> pdf
function (elem, language, id)
{
meta <- tm:::pdfinfo(elem$uri)
content <- system2("pdftotext", c(PdftotextOptions, shQuote(elem$uri),
"-"), stdout = TRUE)
PlainTextDocument(content, meta$Author, meta$CreationDate,
meta$Subject, meta$Title, id, meta$Creator, language)
}
<environment: 0x0c3d7364>
जाहिर है वहाँ कोई अंतर नहीं है - तो क्यों उपयोग readPDF बिल्कुल?
संपादित तृतीय
pdf फ़ाइल यहाँ स्थित है: C:\Users\Raffael\Documents
> getwd()
[1] "C:/Users/Raffael/Documents"
संपादित चतुर्थ
में सबसे पहले अनुदेश
> outfile <- tempfile("pdfinfo")
> on.exit(unlink(outfile))
> status <- system2("pdfinfo", shQuote(normalizePath("C:/Users/Raffael/Documents/17214.pdf")),
+ stdout = outfile)
> tags <- c("Title", "Subject", "Keywords", "Author", "Creator",
+ "Producer", "CreationDate", "ModDate", "Tagged", "Form",
+ "Pages", "Encrypted", "Page size", "File size", "Optimized",
+ "PDF version")
> re <- sprintf("^(%s)", paste(sprintf("%-16s", sprintf("%s:",
+ tags)), collapse = "|"))
> lines <- readLines(outfile, warn = FALSE)
Error in file(con, "r") : cannot open the connection
In addition: Warning message:
In file(con, "r") :
cannot open file 'C:\Users\Raffael\AppData\Local\Temp\RtmpquRYX6\pdfinfo8d419174450': No such file or direc
जाहिर tempfile()
बस एक फ़ाइल बनाने नहीं करता है: और वहाँ त्रुटि पहली कुछ पंक्तियों के भीतर कारण होता है - 43,583,210 tm:::pdfinfo()
के लिए एक कॉल है।
> outfile <- tempfile("pdfinfo")
> outfile
[1] "C:\\Users\\Raffael\\AppData\\Local\\Temp\\RtmpquRYX6\\pdfinfo8d437bd65d9"
फ़ोल्डर C:\Users\Raffael\AppData\Local\Temp\RtmpquRYX6
मौजूद है और कुछ फ़ाइलों को रखती है, लेकिन कोई भी pdfinfo8d437bd65d9
नाम पर है।
getAnywhere(pdf)
A single object matching ‘pdf’ was found
It was found in the following places
package:grDevices
namespace:grDevices [etc.]
लेकिन वापस, पाठ के रूप में पीडीएफ फाइलों में पढ़ने नगण्य साथ पथ है की समस्या के लिए:
क्या आपको अपना पीडीएफ 2txt 'पथ 'सही तरीके से कॉन्फ़िगर किया गया है? विवरण के लिए यहां देखें: https://stat.ethz.ch/pipermail/r-help/2008-November/180201.html – Ben
कृपया, संपादित प्रश्न – Raffael