45

Does anybody know good command line browser with js support?

Ideally I need following ability:

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

It means that cli browser download html, execute js and output a page.

Eugene Manuilov
  • 567
  • 1
  • 5
  • 10

5 Answers5

42

I'm not aware of an interactive browser with js support but you should have a look at PhantomJS which is defined as:

PhantomJS is a headless WebKit with JavaScript API. It has fast and native support for various web standards: DOM handling, CSS selector, JSON, Canvas, and SVG.

To get the page's content after it's been rendered:

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

with save_page.js:

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

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

An interesting side-project is phantomjs-node which integrates PhantomJS with NodeJS, allowing the former to be used as a NodeJS module.

frabjous
  • 10,755
  • 3
  • 34
  • 27
Shadok
  • 3,950
  • 23
  • 29
6

Edbrowse, an ed-style editor/browser optimized for blind users but appreciated by sysadmins for its scriptability, claims to support javascript based on Mozilla's engine. It's at http://the-brannons.com/edbrowse/.

Jonas Kölker
  • 303
  • 3
  • 6
4

According to the documentation for elinks, it supports JavaScript. See section 2.6.1 for information on installing SpiderMonkey.

Dennis Williamson
  • 106,229
  • 19
  • 167
  • 187
4

If you are running linux, you can remote control Firefox using Ruby (and presumably other language bindings) with watir-webdriver, then after you have it working you can trick it into running without any display (but still hit the page, uploading downloading or scraping data) using Xvfb,

user48918
  • 141
  • 1
2

In case a PNG of the webpage is enough and you don't need the HTML source, you should be able to use webkit-image, a small command line utility that comes with Ubuntu. It's however not exactly a feature rich application, so it doesn't offer much customization, it might however be a good starting point for further hacking and thus maybe even allow getting the processed HTML output relatively easily.

Grumbel
  • 3,542
  • 6
  • 31
  • 35