scraping - selectorgadget firefox
R getURL() devolviendo cadena vacía (2)
No estoy exactamente seguro de por qué getURL
no está trabajando en ese contenido, pero htmlParse
del paquete XML
parece obtener el contenido correcto.
Prueba esto:
> library(XML)
> htmlParse(url1)
Perdón por el título, pero no pude pensar cómo decirlo.
Estoy tratando de raspar las páginas web para un estudio: eventualmente serán sometidas a una batería de pruebas lingüísticas.
Mientras tanto...
require(RCurl)
url1 <- "http://www.coindesk.com/bitinstants-charlie-shrem-sees-bitcoin-battles-ahead"
url2 <- "http://www.coindesk.com/terms-conditions/"
html <- getURL(url1) # read in page contents
html
[1] ""
html <- getURL(url2) # read in page contents
html
[1] "<!DOCTYPE html>/r/n<!--[if lt IE 7]> <html class=/"no-js ie ie6 oldie/" lang=/"en/"> <![endif]-->/r/n<!--[if IE 7]> <html class=/"no-js ie ie7 oldie/" lang=/"en/"> <![endif]-->/r/n<!--[if IE 8]>......."
Así que, dado dos URL, cada una para diferentes páginas en el mismo sitio web, la solicitud de url1
devuelve una cadena vacía. Pero url2
funciona bien.
He intentado agregar un agente de navegador como;
html <- getURL(url1, .opts=list(useragent="Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13")) # read in page contents
pero eso no hace ninguna diferencia, sigue siendo una cadena vacía.
¡Solo estoy en el segundo día aprendiendo R y ahora estoy MUERTO!
¿Alguien puede sugerir una razón por la que esto está sucediendo o una solución,
Para que esto funcione con RCurl, debes usar
getURL(url1, .opts=curlOptions(followlocation = TRUE))
Desearía poder decirte por qué. Cuando miro las solicitudes en Chrome, no veo ninguna redirección, pero tal vez me falta algo.
Tenga en cuenta que también puede usar la biblioteca httr
library(httr)
GET(url1)