ホームページ > ウェブフロントエンド > jsチュートリアル > phantomjs_javascript スキルを使用した Web スクレイピングの実装コード

phantomjs_javascript スキルを使用した Web スクレイピングの実装コード

WBOY
リリース: 2016-05-16 16:35:00
オリジナル
1317 人が閲覧しました

phantomjs は js を実行できるヘッドレス ブラウザであるため、dom ノードも実行でき、Web クローリングに最適です。

たとえば、Web ページ上の「Today in History」のコンテンツをバッチ クロールしたいとします。ウェブサイト

dom 構造を観察すると、.list li a の title 値を取得するだけで済みます。そこで、高度なセレクターを使用して DOM フラグメントを構築します

var d= ''
var c = document.querySelectorAll('.list li a')
var l = c.length;
for(var i =0;i<l;i++){
d=d+c[i].title+'\n'
}
ログイン後にコピー

その後は、js コードを phantomjs で実行するだけです~

var page = require('webpage').create();
	page.open('http://www.todayonhistory.com/', function (status) { //打开页面
		if (status !== 'success') {
			console.log('FAIL to load the address');
		} else {
			console.log(page.evaluate(function () {
					var d= ''
					var c = document.querySelectorAll('.list li a')
					var l = c.length;
					for(var i =0;i<l;i++){
					d=d+c[i].title+'\n'
					}
						return d
				}))

		}
		phantom.exit();
	});
ログイン後にコピー

最後に、catch.js として保存し、dos で実行し、内容を txt ファイルに出力します (phantomjs のファイル API を使用して書き込むこともできます)

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート