以前、CapybaraとSeleniumで簡単なスクレイピングのデモを作成した。
久しぶりに動かしたら、JavaScriptでスクロール処理実行時にRubyが実行時エラーとなって動かなかった。
出力されたエラー
unknown error: call function result missing 'value'
ChromeDriverのバージョン
$ /usr/local/bin/chromedriver --version
ChromeDriver 2.31.488774 (7e15618d1bf16df8bf0ecf2914ed1964a387ba0b)
WebDriverを更新したら直る
どうやら、 新しいChromeに対して古いWebDriverを利用していると実行時エラーになるようだった。
source: https://github.com/webdriverio/webdriverio/issues/2631
私の環境ではChromeDriverは、 /usr/local/bin/chromedriver
にあったため、一度削除し最新版に更新した。
最新版のChromeDriverは http://chromedriver.chromium.org/downloads からダウンロードできる。
最新版に更新
2.40にバージョンアップすることで動作するようになった。
$ /usr/local/bin/chromedriver --version
ChromeDriver 2.40.565386 (45a059dc425e08165f9a10324bd1380cc13ca363)