読者です 読者をやめる 読者になる 読者になる

Selenium WebDriverでUser-Agentを変更する

Selenium Python

しばらく前は「Webアプリケーションのテスト自動化にはSeleniumよりWatirの方がよくね?」と思っていたが、Selenium2になってWebDriverが使えるようなり、Rubyで書かなくてはならないWatirより、Pythonで書けるSeleniumの方が断然楽だと感じている。

仕事柄モバイルサイトの構築に関わることが多く、SeleniumなりWatirなりでUser-Agentをモバイルブラウザのものに変更したいと思うことが多いのだが、幸いにしてSeleniumの方はちゃんとドキュメントに書いてあった。(かなり前にWatirで同じことをやろうとして全然分からなくて挫折したのだが、今はどうなっているか調べていない。)

ドキュメントはJavaのコード例だけど、Pythonならば以下のような感じ。

from selenium import webdriver
from selenium.webdriver.firefox.firefox_profile import FirefoxProfile

profile = FirefoxProfile()
profile.set_preference("general.useragent.override",
    "Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3")
driver = webdriver.Firefox(profile)

driver.get("http://t.gree.jp/")

しかし本当はSafariでUser-Agentを変更してWebDriverを使いたいんだよなぁ・・・。