2012-02-14 19 views
8

Me gustaría descargar un archivo pdf de Internet y guardarlo en HD local. Después de la descarga, el archivo de salida de PDF tiene muchas páginas vacías. ¿Que puedo hacer para arreglarlo?Problemas con la descarga del archivo pdf usando R

Ejemplo:

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

Gracias de antemano.

+2

He copiado y pegado el código y tengo las 109 páginas del documento como debe ser. ¿Tal vez un problema con su visor de PDF? – vaettchen

+0

funciona bien para mí. (R 2.14.1, Linux - ¿podría publicar resultados de 'sessionInfo()'? Parece probable que sea un visor o algún otro problema del sistema operativo, ya que es una funcionalidad bastante básica ...) Por cierto, usted no 't necesita el paquete 'XML' para esto -' download.file' es parte de la base R. –

+0

PS. Supongo que estás en Windows: 'download.file' dice:" El código escrito para descargar archivos binarios debe usar 'mode = "wb"', pero los problemas que pueda sufrir una transferencia de texto solo se verán en Windows. " –

Respuesta

23

intento con WB-modo de la siguiente manera:

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

Para mí funciona de esa manera.

+1

¡Eso es todo! mode = 'wb' resolvió el problema. ¡Gracias! – Diogo

+1

¡esta respuesta me ahorró una gran cantidad de trabajo! (en Win OS) – userJT

+1

Para agregar una explicación, 'mode =" wb "' le dice a la función que trate el archivo como binario en lugar de como texto. – Matt

-1

se puede descargar archivos PDF y exportar tablas como hoja.de.datos usando tabulizer paquete

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") 
Cuestiones relacionadas