open example ejemplo ajax r firefox web-scraping rcurl

example - ¿Cómo puedo controlar Firefox desde R para manejar AJAX/Javascripts?



xmlhttprequest javascript post (1)

Intento encontrar una manera de controlar un navegador (preferiblemente Firefox) mediante scripts R para recuperar información controlada por AJAX / JavaScript en sitios web. Por ejemplo, ¿cómo podría recuperar los valores en el campo "Modell" en http://www.mobile.de/home/index.html ?

AFAIU, el paquete de Gabe Becker "RFirefox" proporciona algún tipo de enlace entre R y Firefox. Pero siendo un Windows-Kid (no por convicción, pero los efectos de red de larga data ;-)), no pude probarlo todavía así que no estoy seguro de si puede hacer lo que estoy buscando.

Entonces, ¿hay alguien que tenga alguna experiencia con RFirefox o que maneje AJAX vía R todavía? No quiero que hagas mi tarea, pero antes de sumergirme en el mundo de Linux, me gustaría evaluar si vale la pena.

Sin embargo, cualquier ejemplo de código sería muy apreciado. ;-)


No tengo claro por qué necesita un navegador para hacer esto. Es solo raspado de la web; requerirá algún tipo de analizador, sin duda, pero no necesariamente un navegador. Creo que RFirefox puede estar ladrando el árbol equivocado. Si quieres jugar con las conexiones Javascript + R, eche un vistazo al SpiderMonkey de Duncan Temple Lang.

Aun así, creo que puede ser mejor recopilar datos con una instalación de rastreo / raspado más seria adecuada para trabajar con Javascript. Esta pregunta sobre SO parece particularmente alineada con eso. Mi recomendación sería obtener una herramienta que haga lo que necesita, y luego interactuar con R al nivel más simple posible. Hay enlaces para Webkit a varios idiomas, aunque este no parece ser el caso de R.

Esta pregunta aborda su situación aún más de cerca: también está en Windows. No usa Webkit. Las tres sugerencias en la respuesta aceptada se refieren al acceso a las herramientas, escritas en C / C ++, desde Python. R tiene interfaces para ambos, por lo que puede resultarle más fácil escribir algunas cosas para trabajar con ellas y pasar objetos e instrucciones de ida y vuelta entre R y Python o C / C ++.