¿Hay alguna buena herramienta además de SeleniumRC que pueda obtener páginas web que incluyan contenido post-pintado por JavaScript?

8

Una de las principales deficiencias curles que cada vez más páginas web tienen su contenido principal pintado por una respuesta JavaScript AJAX que ocurre después de la respuesta HTTP inicial. curlnunca recoge este contenido post-pintado.

Por lo tanto, para obtener este tipo de páginas web desde la línea de comandos, me he visto obligado a escribir scripts en Ruby que impulsan al SeleniumRC a iniciar una instancia de Firefox y luego devolver el código fuente HTML después de que se hayan completado estas llamadas AJAX.

Sería mucho mejor tener una solución de línea de comando más ágil para este tipo de problema. ¿Alguien sabe de alguno?

dan
fuente
Nadie ha sugerido nada más. ¿Alguien aquí tiene experiencia en la automatización de algunas tareas en aplicaciones web usando curl? , pero esa pregunta no se refería específicamente a eliminar JavaScript.
Gilles 'SO- deja de ser malvado'

Respuestas:

2

Hace poco comencé a usar WebDriver de Selenium 2 en Java. Hay un controlador llamado HtmlUnitDriver que es totalmente compatible con JavaScript pero no enciende un navegador real.

No es una solución ligera, pero hace el trabajo.

Diseñé el código para que se ejecute desde la línea de comandos y guarde los datos web en archivos.

Michael Gantz
fuente
2

¿Has considerado a Watir?

http://watir.com/

Cuando haya agregado el paquete, puede ejecutarlo como un archivo independiente o desde irblínea por línea después include 'watir-webdriver'. He descubierto que responde mejor selenium-webdriver, pero sin la GUI de grabación de prueba para ayudar a resolver condiciones de prueba complejas.

Rogue_Leader
fuente