36

Кто-нибудь знает хороший браузер командной строки с поддержкой js?

В идеале мне нужны следующие способности:

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

Это означает, что браузер загрузит html, выполнит js и выведет страницу.

5 ответов5

33

Я не знаю об интерактивном браузере с поддержкой js, но вы должны взглянуть на PhantomJS, который определяется как:

PhantomJS - это безголовый WebKit с JavaScript API. Он имеет быструю и встроенную поддержку различных веб-стандартов: обработка DOM, селектор CSS, JSON, Canvas и SVG.

Чтобы получить содержимое страницы после ее визуализации:

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

с помощью save_page.js:

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

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

Интересным сайд-проектом является phantomjs-node, который интегрирует PhantomJS с NodeJS, что позволяет использовать первый в качестве модуля NodeJS.

5

Edbrowse, редактор / браузер в стиле ed, оптимизированный для слепых пользователей, но признанный системными администраторами за его удобство написания сценариев, утверждает, что поддерживает javascript, основанный на движке Mozilla. Это на http://the-brannons.com/edbrowse/.

4

Если вы работаете в Linux, вы можете удаленно управлять Firefox с помощью Ruby (и, вероятно, других языковых привязок) с помощью watir-webdriver, а затем, после того, как он заработает, вы можете заставить его работать без отображения (но по-прежнему нажимать на страницу, загружая загрузку или очистка данных) с использованием Xvfb,

3

Согласно документации для elinks, он поддерживает JavaScript. См. Раздел 2.6.1 для получения информации об установке SpiderMonkey.

2

В случае, если PNG веб-страницы достаточно и вам не нужен источник HTML, вы сможете использовать webkit-image , небольшую утилиту командной строки, которая поставляется с Ubuntu. Однако это не совсем многофункциональное приложение, поэтому оно не предлагает особых настроек, однако может стать хорошей отправной точкой для дальнейшего взлома и, следовательно, может даже позволить относительно легко получить обработанный HTML-вывод.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .