Navegador de linha de comando com suporte a js

39

Alguém conhece um bom navegador de linha de comando com suporte a js?

Idealmente, preciso da seguinte habilidade:

some-browser http://example.com > ~/page.html

Isso significa que o navegador cli baixa html, executa js e gera uma página.

Eugene Manuilov
fonte
1
Eu realmente não brinquei com isso, mas talvez o uzbl ( uzbl.org ) possa fazê-lo.
LawrenceC

Respostas:

36

Não conheço um navegador interativo com suporte a js, mas você deve dar uma olhada no PhantomJS, que é definido como:

O PhantomJS é um WebKit sem cabeça com API JavaScript. Possui suporte rápido e nativo para vários padrões da web: manipulação de DOM, seletor de CSS, JSON, Canvas e SVG.

Para obter o conteúdo da página após a renderização:

$ phantomjs save_page.js http://example.com > ~/page.html

com save_page.js:

var system = require('system');
var page = require('webpage').create();

page.open(system.args[1], function()
{
    console.log(page.content);
    phantom.exit();
});

Um projeto paralelo interessante é o phantomjs-node, que integra o PhantomJS ao NodeJS , permitindo que o primeiro seja usado como um módulo NodeJS.

Shadok
fonte
Spot on. É mesmo o que eu procurava. Eu não
precisei
2
Eu apenas tentei isso em uma página que eu mesmo criei. Ele está descartando a página antes da execução do javascript. Alguma sugestão?
abalter 30/10/19
@abalter: Isso obviamente significa que há um erro de sintaxe na sua página.
Julie Pelletier
5

O Edbrowse, um editor / navegador de estilo ed otimizado para usuários cegos, mas apreciado pelos administradores de sistemas por sua capacidade de script, afirma apoiar o javascript com base no mecanismo da Mozilla. Está em http://the-brannons.com/edbrowse/ .

Jonas Kölker
fonte
4

Se você estiver executando o Linux, você pode controlar remotamente o Firefox usando Ruby (e provavelmente outras associações de idiomas) com watir-webdriver ; depois que estiver funcionando, você poderá enganá-lo para que ele funcione sem exibição (mas ainda acerte a página, fazendo o download de download ou raspagem de dados) usando Xvfb ,

user48918
fonte
3

De acordo com a documentação paraelinks , ele suporta JavaScript. Consulte a seção 2.6.1 para obter informações sobre a instalação do SpiderMonkey.

Pausado até novo aviso.
fonte
1
Depende de como você compilar as ligações (ou elinks)
kokosing
2

Caso um PNG da página seja suficiente e você não precise da fonte HTML, poderá usar webkit-imageum pequeno utilitário de linha de comando que acompanha o Ubuntu. No entanto, não é exatamente um aplicativo rico em recursos, por isso não oferece muita personalização, mas pode ser um bom ponto de partida para novos hackers e, portanto, talvez até permita obter a saída HTML processada com relativa facilidade.

Grumbel
fonte