Help us understand the problem. What is going on with this article?

調査メモ/Selenium, PhantomJS などWebDriver経由でのスクレイピングについてググった(2015-10-08時点)

More than 3 years have passed since last update.

HTMLのパーサで、変化の激しいW3Cの世界で、互換性や新機能に追従していくのは難しそう。
そこで、いっそのこと実際のブラウザのパーサ機能だけは使えないか?つまり、ヘッドレスブラウザならどうか、JSを動かす必要は無くて、HTMLのパーサ機能だけ欲しい。

ということで、ヘッドレスブラウザのレンダリング機能を扱えるアプローチを探るため、SeleniumやWebDriver系でどう扱えそうかかるくググったメモです。

Chrome用 + Chrome自身の開発速度が速いこともあり、簡単にパース機能「だけ」使える状況では無さそう。

PhantomJS + WebDriverのアプローチはどうか?軽くググッてみる。xpathで要素取り出せたりとかができれば便利だろう。

結論 : PhantomJSのWebDriverは、結局内部的にJSが動く。そのため、JSをdisabledにしたらODM要素の取り出しなど全部動かなくなるので今回の観点からはナンセンス。

どうも、HtmlUnitをWebDriverでラップしたHtmlUnitDriverが最速らしい。これならJSも動かさずにいけるかも?

とりあえずメモなので結論は出せません。ただ、以前IEのconditional comments で躓いたことがありますが、JSoupの方はissueがopenなまま ( https://github.com/jhy/jsoup/issues/360 ) で、HtmlUnit の方も多少対応はされてるようですがどこまで耐えられるのかちょっと心配です。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away