ユーザーに表示される前に、クライアント側のJavaScriptを使用してページ上のデータをフォーマットするこのWebページがあります。
どういうわけかwget
を使用してページをダウンロードし、何らかのクライアント側JavaScriptエンジンを使用して、ブラウザーに表示されるようにデータをフォーマットすることは可能ですか?
あなたはおそらくそれを PhantomJS のようなもので起こすことができます
ブラウザと同じようにページを読み込むphantomjsスクリプトを記述し、スクリーンショットを撮るか、JSを使用してページを検査し、データを引き出します。
以下は、WebページでJavaScriptをトリガーし、ローカルでそれをプルダウンできるようにする単純な小さなphantomjsスクリプトです。
file: get.js
var page = require('webpage').create(),
system = require('system'), address;
address = system.args[1];
page.scrollPosition= { top: 4000, left: 0}
page.open(address, function(status) {
if (status !== 'success') {
console.log('** Error loading url.');
} else {
console.log(page.content);
}
phantom.exit();
});
次のように使用します。$> phantomjs /path/to/get.js "http://www.google.com" > "google.html"
変更/path/to
、url
およびfilename
を必要に応じて変更します。
Wgetではありません。JavaScriptエンジンの任意の形式が含まれているとは思いません。ただし、WebKitを使用してページ、つまり出力を処理することができます。
このようなものをコンテンツの取得方法のベースとして使用: http://splied.wordpress.com/2008/06/04/take-screenshots-of-a-website-from-the-command-行/