¿Existe un navegador en modo texto que admita JavaScript?


53

Necesito configurar mi enrutador de forma remota, y los enlaces, etc., no funcionarán porque la página de configuración del enrutador usa JavaScript y se niega a ejecutarse sin él.

Obviamente, lástima en netgear por ser esta basura, pero ¿hay un navegador en modo de texto que permita que se ejecute su aborto?

Respuestas:



16

Comprueba qué versión de enlaces tienes.

elinks -version
ELinks 0.12pre6 #Not the version that supports ECMAScript

El artículo " Creación de un navegador web basado en texto eLinks con (algún tipo de) compatibilidad con JavaScript " describe cómo configurar JavaScript en enlaces.

Señala que la versión resultante de elinks todavía no funciona con muchas páginas web, por lo que tal vez el soporte de JavaScript no esté habilitado de forma predeterminada en la versión de elinks en Ubuntu.

También se observan otras alternativas menos exitosas: links2 y w3m + w3m-js extension.

A continuación se muestra un resumen rápido de los comandos para crear enlaces que admiten ECMAScript:

wget http://elinks.or.cz/download/elinks-current-0.13.tar.bz2
tar xjvf elinks-current-0.13.tar.bz2
cd elinks-0.13*
./configure
#Check for ECMAScript support. 
make -j8
sudo make install

1
Tenga en cuenta que necesita tener instalado el paquete libmozjs185-dev, de lo contrario, 0.13 no será más útil que 0.12pre6 o cualquier otro sin soporte ECMAScript. Además, es necesaria alguna configuración para habilitar ECMAScript. Vea otra respuesta para más detalles.
Ruslan

Parece que libmozjs185se ha eliminado de Ubuntu 18.04 Bionic. Los paquetes libmozjs-38-devy libmozjs-52-devexisten, pero el último código maestro de rama de enlaces no los usará para compilar en soporte JS. Específicamente quiere mozjs185o mozilla-js.
David Baucum

1
@DavidBaucum vea esta respuesta de StackOverflow que dice cómo instalarlo.
Ruslan

9

Ninguna de las respuestas anteriores me funcionó fuera de la caja. elinksaunque es el único bastante capaz, esto es lo que hice:

sudo apt install libmozjs185-dev pkg-config libssl-dev

Es muy importante tener instalado pkg-config, sin que configure no puede detectar el motor Javascript SpiderMonkey, sin libssl-devque no pueda acceder a los sitios HTTPS.

wget http://elinks.or.cz/download/elinks-current-0.13.tar.bz2

deshacer:

tar xvf elinks-current-0.13.tar.bz2
cd elinks-0.13-20171228/

luego configure y verifique si se ve javascript:

./configure | grep -i "javascript"

El resultado debe ser:

ECMAScript (JavaScript) ......... SpiderMonkey document scripting

si el resultado es

ECMAScript (JavaScript) ......... no 

verifique los pasos anteriores hasta obtener el resultado correcto.

Luego haz las fuentes

make -j8

E instalarlo:

sudo make install

Ahora habilítelo y pruébelo ejecutando:

elinks ./test/ecmascript/protocol.html

Presione Alt+ S, O Tecla abajo ( ) y luego Spaceencendido ECMAScript, Alt+ Eal Enablecambiar a1

ingrese la descripción de la imagen aquí

Alt+ Vpara guardar y luego OK

Ahora es capaz de ejecutar algunos Javascript.


1
Como libmozjs185-devse ha eliminado de los repositorios de Ubuntu Bionic, consulte esta respuesta de StackOverflow sobre cómo instalarlo.
Ruslan

6

Browsh es un navegador moderno basado en texto, que se ejecuta en la terminal. Según su sitio web, "representa todo lo que un navegador moderno puede; HTML5, CSS3, JS, video e incluso WebGL". Funciona mucho mejor que elinks. Está escrito en Go, por lo que está disponible en la mayoría de las plataformas principales (Linux, Mac, Windows). Hay también una demostración en vivo, que se puede acceder a través de SSH: $ ssh brow.sh.


La demo es bastante convincente +1
Eduard Florinescu

4

Hay una buena tabla de comparación de características en Linux Journal


10
Quisiera señalar que actualmente ese artículo tiene más de 10 años, desde 2005.
user1359

1

Vea esta respuesta : a partir de v0.23, Web Adjuster tiene una opción PhantomJS, que puede habilitar parcialmente Javascript en cualquier navegador con la ayuda de PhantomJS. Digo "parcialmente" porque no está (¿todavía?) Trabajando con formularios POST y enlaces solo de Javascript, pero está bien para leer el texto de una página que requiere Javascript antes de mostrar ese texto.

sudo apt-get install python-selenium
wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-i686.tar.bz2
tar -jxvf phantomjs-2.1.1-linux-i686.tar.bz2 
cd phantomjs-2.1.1-linux-i686/
sudo mv bin/phantomjs /usr/local/bin/
cd ..
sudo apt-get install python-tornado
wget http://ssb22.user.srcf.net/adjuster/adjuster.py
python adjuster.py --PhantomJS --real_proxy

y en otra ventana o pestaña

http_proxy=http://localhost:28080 lynx http://site-that-needs-javascript.example.com/

Divulgación: mantenedor del Ajustador web aquí.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.