スクレイピングのためにNode.jsにヘッドレスSeleniumを使用する必要があります。私はWebdriver.ioを試しましたが、ヘッドレスでないSeleniumで動作しました。しかし、私はヘッドレスセレンを実行すると、全く動作しませんでした。ここにコードがあります(webdriver.ioの例と同じです)Node.js Webdriver.io + Seleniumを使用したヘッドレスWebスクレイピング
webdriverio
.remote(options)
.init()
.url('http://www.google.com')
.getTitle().then(function(title) {
console.log('Title was: ' + title);
})
.end();
ヘッドレスセレンで動作させるにはどうすればいいですか?それとも何か別の選択肢がありますか?
私はcheerioを知っており、以前にリクエストして使用しました。要求に伴う問題は、ブラウザで見られるようにHTMLを返さないことがあるため、HTMLをCheerioで解析することは不可能です。たとえば、このページのindotrading.com/companycatalog/。私は、HTMLコードを取得し、cheerioでロードする方法を見つける必要があります。 – NoName2
申し訳ありませんが、動的サイトを掻き集めるようです。[nightmarejs](https://github.com/segmentio/nightmare)はフレンドリーでしたが、PhantomJSの依存関係は嫌でした。 Zombie.jsはブラウザテストフレームワークに進化しましたが、別のツールキットに依存しないため、これまで何度も使用してきました。 – Ding
fwiw、nightmare.jsにphantomjsの依存関係がなくなりました(約1年前に削除されました)。今は完全に電子で実行されています。 – reinpk