linux - edbrowse - Lynx con javascript
web browser linux console (5)
El selenio es el camino a seguir, pero como usted nota, necesita una pantalla. Lo que luego necesita ser lanzado, y yada yada yada, ¡ahora tiene una configuración bastante compleja en marcha!
Afortunadamente, hay otra manera de automatizar todo eso, y es a través de un marco de automatización. Recomiendo a Jenkins. Ya tiene un complemento para lanzar un servidor x.
Así que la tubería aproximada es la siguiente:
- Olvidate de crontab
- Configurar un servidor jenkins ubuntu (con x instalado)
- Instale el complemento jenkins xvncserver (?). Creo que así es como se llama. De todos modos esto lanzará un XHOST por ti automáticamente.
- Escriba los scripts de Selenium webdriver que van a la ubicación en cuestión (lo más fácil * es usar el IDE de Selenium)
- Haga que el IDE de Selenium genere los scripts de webdriver en cualquier formato, luego haga que jenkins lo ejecute. Personalmente uso el formato Java, luego uso ant para construirlos.
Como puede imaginar, esta es una configuración bastante, pero técnicamente hará lo que está pidiendo. Lo siento, no es tan simple como enviar wget a lynx.
Otra forma de hacerlo es simplemente reescribir su página web a DO STUFF sin asumir un navegador, por ejemplo, tome un parámetro GET que lo pone en "modo automático" y luego asumirá que se ejecuta desde un cron y hace su felicidad a través de un circuito más corto. .
Así que escribí un script en PHP que requiere javascript para ejecutarlo. He tenido dificultades para encontrar la solución sobre cómo ejecutar el javascript con php al mismo tiempo usando alguna herramienta de Linux para hacerlo automático (ya que ejecutarlo en mi navegador no es una opción, necesito que sea un crontab ). Usar el comando "php" tampoco es una opción, ya que no ejecuta javascript. Así que encontré una solución, era lince.
Así que aquí está mi problema: por alguna razón, el javascript funciona bien en mi navegador, pero no en lynx. Usando lynx, la página solo carga sin ninguna participación de javascript. ¿Hay alguna forma de depurar javascript en lynx? ¿Qué tipo de google chrome tiene donde poder ver lo que está pasando desde la consola, así que puedo averiguar qué está causando que el script no se ejecute en lynx?
Editar:
Así que aparentemente lynx no soporta javascript. En ese caso, mi pregunta es, ¿qué hace? Necesito ejecutar este script como lo haría un navegador, pero desde el símbolo del sistema de Linux. Y si el sistema operativo es importante en este caso, estoy ejecutando el último Ubuntu.
Lo que necesitas se llama un navegador sin cabeza . Por ejemplo, PhantomJS es uno de ellos. Creo que es el más popular.
Lynx no soporta Javascript.
Actualización 1
En función de su resumen de lo que está tratando de hacer (inicie sesión en un sitio que requiere JavaScript para el cifrado de la contraseña), le recomiendo encarecidamente que utilice Selenium u otro paquete de automatización del navegador. Incluso si el envío de la contraseña funciona correctamente sin una capa de este tipo, es probable que el sitio tenga otros problemas si usa un navegador minimalista como Lynx.
Si solo desea ejecutar Javascript desde la línea de comandos, le aconsejaría algo como nodejs u otto . Tienen una huella de rendimiento mucho más pequeña como un navegador sin cabeza.
Si necesita algo más que un simple Javascript, por ejemplo, el DOM o algo así, debe probar un navegador sin cabeza ( Chrome , PhantomJS ) como lo sugieren otros.
Si no solo necesita un navegador, sino que desea realizar pruebas automáticas con ese navegador, Selenium sigue siendo el camino a seguir.
Realmente depende de su caso de uso cuánto necesita.
Actualización: desde hace unos meses es posible usar Chrome ahora (Firefox también está en camino).