web-dev-qa-db-ja.com

jsをサポートするコマンドラインブラウザ

Jsをサポートする優れたコマンドラインブラウザを知っている人はいますか?

理想的には次の能力が必要です:

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

これは、cliブラウザーがhtmlをダウンロードし、jsを実行して、ページを出力することを意味します。

40
Eugene Manuilov

私はjsをサポートするinteractiveブラウザを認識していませんが、次のように定義されている PhantomJS を確認する必要があります。

PhantomJSは、JavaScript APIを備えたヘッドレスWebKitです。 DOM処理、CSSセレクター、JSON、Canvas、SVGなど、さまざまなWeb標準を高速かつネイティブでサポートしています。

レンダリングされた後にページのコンテンツを取得するには:

$ 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モジュールとして使用できるようにします。

37
Shadok

Edbrowseは、ブラインドユーザー向けに最適化されたedスタイルのエディター/ブラウザーですが、システム管理者からそのスクリプト機能が高く評価されており、Mozillaのエンジンに基づくjavascriptをサポートすると主張しています。 http://the-brannons.com/edbrowse/ にあります。

5
Jonas Kölker

Linuxを実行している場合は、Ruby(およびおそらく他の言語バインディング)と watir-webdriver を使用して、Firefoxをリモートコントロールできます。 Xvfb を使用して、何も表示せずに実行します(ただし、ページにアクセスし、データをアップロードまたはダウンロードします)。

4
user48918

elinks のドキュメントによると、JavaScriptをサポートしています。 SpiderMonkeyのインストールについては、セクション2.6.1を参照してください。

WebページのPNGで十分で、HTMLソースが必要ない場合は、Ubuntuに付属する小さなコマンドラインユーティリティであるwebkit-imageを使用できるはずです。ただし、機能が豊富なアプリケーションではないため、カスタマイズはそれほど多くありませんが、ハッキングの開始点として適している場合があり、処理されたHTML出力を比較的簡単に取得できる場合もあります。

2
Grumbel