Existe um navegador em modo de texto que suporte javascript?

53

Preciso configurar meu roteador remotamente, e os links etc. não funcionarão porque a página de configuração do roteador usa javascript e se recusa a executar sem ele.

Obviamente, é uma pena que a netgear seja uma porcaria, mas existe um navegador de texto que permita que o aborto seja executado?

John Lawrence Aspden
fonte

Respostas:

18

O edbrowse afirma apoiar o JavaScript (mas nunca o usei)

Como ed é o editor padrão, o edbrowse pode se tornar o navegador padrão ;-).

Florian Diesch
fonte
Eu tentei seguir esse caminho; não parece ser um navegador semelhante ao lynx. Parece ser muito mais útil se você deseja escrever um script para percorrer um site.
Brian Vandenberg
16

Verifique qual versão do elinks você possui.

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

O artigo " Criando um navegador da Web baseado em texto eLinks com (algum tipo de) suporte a JavaScript " descreve como configurar o javascript nos elinks.

Ele observa que a versão resultante de elinks ainda não funciona com muitas páginas da web, e talvez por isso o suporte a javascript não seja ativado por padrão na versão elinks no Ubuntu.

Outras alternativas ainda menos bem-sucedidas também são observadas: extensão links2 e w3m + w3m-js.

Um rápido resumo dos comandos para a construção de elinks que suportam ECMAScript a seguir:

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
nealmcb
fonte
11
Observe que você precisa ter o pacote libmozjs185-dev instalado; caso contrário, o 0.13 não será mais útil que o 0.12pre6 ou qualquer outro sem o suporte ao ECMAScript. Além disso, é necessária alguma configuração para ativar o ECMAScript. Veja outra resposta para obter detalhes.
Ruslan
Parece que libmozjs185foi removido do Ubuntu 18.04 Bionic. Os pacotes existem libmozjs-38-deve libmozjs-52-dev, mas o código mais recente de elinks da filial principal não os usará para compilar no suporte a JS. Quer especificamente mozjs185ou mozilla-js.
David Baucum
11
@DavidBaucum veja esta resposta do StackOverflow dizendo como instalá-lo.
Ruslan
9

Nenhuma das respostas acima funcionou para mim imediatamente. elinksembora seja o único capaz, é isso que eu fiz:

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

Muito importante ter instalado pkg-config, sem ele configurar não é possível detectar o mecanismo SpiderMonkey Javascript, sem que libssl-devvocê não possa acessar sites HTTPS.

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

desembalar:

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

configure e verifique se o javascript é visto:

./configure | grep -i "javascript"

O resultado deve ser:

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

se o resultado for

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

verifique as etapas acima até obter o resultado certo.

Então faça as fontes

make -j8

E instale-o:

sudo make install

Agora ative e experimente, executando:

elinks ./test/ecmascript/protocol.html

Pressione Alt+ S, O Tecla para baixo ( ) e, Spaceem seguida ECMAScript, Alt+ , Epara Enablealterar para1

insira a descrição da imagem aqui

Alt+ Vpara salvar e depois OK

Agora ele é capaz de executar um pouco de Javascript.

Eduard Florinescu
fonte
11
Como libmozjs185-devfoi removido dos repositórios Ubuntu Bionic, consulte esta resposta do StackOverflow sobre como instalá-lo.
Ruslan
6

Browsh é um navegador moderno baseado em texto, que roda no terminal. De acordo com o site, "Ele renderiza tudo o que um navegador moderno pode; HTML5, CSS3, JS, vídeo e até WebGL". Funciona muito melhor que elinks. Está escrito em Go, por isso está disponível na maioria das plataformas principais (Linux, Mac, Windows). Há também uma demonstração ao vivo, que pode ser acessado via SSH: $ ssh brow.sh.

otter.pro
fonte
A demo é bastante convincente +1
Eduard Florinescu
4

Há uma boa tabela de comparação de recursos no Linux Journal

Andy
fonte
10
Gostaria de salientar que presentemente que o artigo é mais de 10 anos de idade, a partir de 2005.
user1359
1

Veja esta resposta : a partir da v0.23, o Ajustador da Web possui uma opção PhantomJS, que pode ativar parcialmente o Javascript em qualquer navegador com a ajuda do PhantomJS. Digo "parcialmente" porque ainda não está trabalhando com formulários POST e links somente para Javascript, mas é bom ler o texto de uma página que requer Javascript antes de mostrar esse 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

e em outra janela ou guia

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

Divulgação: mantenedor do Ajustador da Web aqui.

Silas S. Brown
fonte