2012-02-14 13 views
8

Chciałbym pobrać plik pdf z Internetu i zapisać go w lokalnej rozdzielczości HD. Po pobraniu plik wyjściowy pdf zawiera wiele pustych stron. Co mogę zrobić, aby to naprawić?Problemy z pobieraniem pliku pdf za pomocą R

Przykład:

require(XML) 
url <- ('http://cran.r-project.org/doc/manuals/R-intro.pdf') 
download.file(url, 'introductionToR.pdf') 

góry dzięki.

+2

I skopiowany i wklejony kod i dostał 109 stron dokument, jak powinno być tabulizer. Może problem z przeglądarką plików PDF? – vaettchen

+0

działa dobrze dla mnie. (R 2.14.1, Linux - czy mógłbyś opublikować wyniki 'sessionInfo()'? Wygląda na to, że będzie to przeglądarka lub jakiś inny problem z systemem operacyjnym, ponieważ jest to całkiem podstawowa funkcjonalność ...) Przy okazji, ty don do tego celu potrzebny jest pakiet 'XML' - plik' download.file' jest częścią bazy R. –

+0

PS. Zgaduję, że jesteś w systemie Windows: '? Download.file' mówi:" Kod napisany do pobrania plików binarnych musi używać 'mode = "wb"', ale problemy spowodowane transferem tekstu będą widoczne tylko w systemie Windows. " –

Odpowiedz

23

spróbować z WB-trybie tak:

download.file(url, 'introductionToR.pdf', mode="wb").

Dla mnie działa w ten sposób.

+1

To wszystko! mode = 'wb' rozwiązało problem. Dzięki! – Diogo

+1

ta odpowiedź zaoszczędziła mi wiele pracy! (na Win OS) – userJT

+1

Aby dodać wyjaśnienie, 'mode =" wb "' mówi funkcji, aby traktować plik jako plik binarny, a nie tekst. – Matt

-1

można pobrać pliki PDF i tabel eksportowych data.frame użyciu pakietu

https://ropensci.org/tutorials/tabulizer_tutorial.html

install.packages("devtools") 
# on 64-bit Windows 
ghit::install_github(c("ropenscilabs/tabulizerjars", "ropenscilabs/tabulizer"), INSTALL_opts = "--no-multiarch") 
# elsewhere 
ghit::install_github(c("ropenscilabs/tabulizerjars", "ropenscilabs/tabulizer")) 

library(tabulizer) 

f2 <- "https://github.com/leeper/tabulizer/raw/master/inst/examples/data.pdf" 
extract_tables(f2, pages = 1, method = "data.frame") 
Powiązane problemy