6

URLのレンダリングされたコンテンツをレンダリングして取得するには、コマンドラインツール(またはJavascript / PHPですが、コマンドラインが1つの方法だと思います)が必要ですが、CSS / Html /画像だけでなくJavascriptをレンダリングする必要があることが重要です。

たとえば、「renderengine http://www.google.es outputfile.html」のようなコマンドを実行すると、Web のコンテンツ (解析された html と実行された JavaScript) が outputfile.html に保存されます。

これが必要なのは、grooveshark のような完全な JavaScript Web サイトの結果を取得する必要があるためです。サイトはすべて javascript/ajax を使用してロードされ、クローラーは何も見つけられず、基本的な HTML の空のテンプレートのみが見つかります (ajax/javscript を使用した後にロードされるため)。

ファイルに保存するための結果を出力する Javascript (V8 など) をサポートする Linux 用のブラウザ エンジンはありますか?

4

2 に答える 2

6

www.phantomjs.orgからphantomjsを試してみてください。含まれている rasterize.js を簡単に変更して、レンダリングされた HTML をエクスポートできます。これは webkit に基づいており、ターゲット サイトの JavaScript を完全に評価し、必要に応じてタイムアウトを調整したり、独自のコードを最初に実行したりできます。私は個人的にそれを使用して、完全にレンダリングされたノックアウト.js テンプレートのハードコピー HTML ファイル バージョンを保存します。

javascript を実行するので、次のようなことを行い、コンソール出力をファイルに保存しました。

var markup = page.evaluate(function(){return document.documentElement.innerHTML;});
console.log(markup);
phantom.exit();
于 2013-09-10T13:27:28.783 に答える