LoginSignup
3
1

More than 5 years have passed since last update.

ふつうに Selenium でスクリーンショットを撮りたい

Posted at

ただ、別マシンから Windows 上のfirefox でスクショとりたいだけなのに、Selenium がややこしすぎたのでMEMO。

用意する環境

ブラウザ操作される側
Windows7,10
standalone.jar
gecko.exe

指示側
Centos
ruby
selenium-webdriver

起動の仕方

standaloneでwebdriverを指定するとドライバー経由で起動してくれる。
ドライバー単体でも起動できるが、個別にドライバーを起動する必要はない。むしろ起動してしまうとポートがぶつかってややこしい。

java -Dwebdriver.gecko.driver="C:\geckodriver.exe" -jar selenium.jar

ruby

driver = Selenium::WebDriver.for :remote , url: "http://192.168.1.11:4444/wd/hub", desired_capabilities: :firefox
driver.navigate.to "https://google.com"
driver.save_screenshot('path/to/filename.png')

スクリーンショット取れたぞー。

混乱させられた所

名前で混乱
サーバー側で起動するときは、geckoとなっているが、rubyではfirefoxとなっている。
レンダリングエンジン名とブラウザ名がばらばらでわかりずらい。

Webドライバーで混乱
W3Cwebdriver と selenium webdriver 二つがあってどうやら、W3CがW3CwebdriverというAPIを提供しているようだ。Selenium3.0? からは W3Cwebdriver に向かおうとしてるみたい。
ブラウザが統一のAPIを提供しだしたということは、Selenium Driverはお役ごめんとなりそう。

用語多すぎて記事が少なすぎて混乱
Selenium2.0?3.0? SeleniumSelenium RC? Selenium Grid? Selenium-standalone? Selenium-server? Selenium-webdriver? Marionette? chromedriver?
Seleniumの中で大きな変化が起こっているようで、新しい記事が間に合っていない。
こんなに混乱させられるなら、Seleniumって名前は捨てて新しいソフト名で作ったほうがいいように思いました。
私だけ?

3
1
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1