47

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.

2

5 Answers 5

43

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.

3
  • Spot on. Just what I was looking for. I didn't need to ask my question in the end Commented Jan 9, 2015 at 9:19
  • 4
    I just tried this on a page I created myself. It is dumping the page before the javascript runs. Any suggestions?
    – abalter
    Commented Oct 30, 2017 at 4:11
  • @abalter: That obviously means there is a syntax error in your page. Commented Jan 22, 2018 at 17:22
7

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/.

5

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

1
  • 1
    It depends on how you compile the links (or elinks)
    – kokosing
    Commented Mar 9, 2017 at 11:04
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,

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.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .