hello-world
webエンジニアのメモ。とりあえずやってみる。

[Ruby]seleniumで遊んでみる

公開日時

Selenium で自動化したいことがあったので色々遊んでみました。

その時のメモです。

基本的な使い方は RubyでSeleniumを使ってスクレイピング を参考にさせていただきました。

  • インストール
gem install selenium-webdriver
  • http proxyを使いたい場合
profile = Selenium::WebDriver::Firefox::Profile.new
profile["network.proxy.type"] = 1
profile["network.proxy.http"] = "my-proxy"
profile["network.proxy.http_port"] = 80
driver = Selenium::WebDriver.for(:firefox, :profile => profile)
  • socks proxyを使いたい場合
profile = Selenium::WebDriver::Firefox::Profile.new
profile["network.proxy.type"] = 1
profile["network.proxy.socks"] = "localhost"
profile["network.proxy.socks_port"] = 1080
driver = Selenium::WebDriver.for(:firefox, :profile => profile)
  • ページ読み込み
driver.navigate.to "https://www.google.co.jp"
  • name="sample_selectbox"となっているselect boxの値を1に設定
Selenium::WebDriver::Support::Select.new(driver.find_element(:name, 'sample_selectbox')).select_by(:value, '1')
  • name="sample_input"となっているinput textにtestと入力
driver.find_element(:name, 'sample_input').send_keys('test')
  • name="submit"をクリック
driver.find_element(:name, 'submit').click
  • jsを実行 (アラートを表示)
driver.execute_script("return alert('sample');")

参考


Related #Ruby

[Rails]find_or_create_byとfind_or_initialize_by

Rails4で確認。

capistranoで世代管理する際の注意点

最近、デプロイツールに capistranoを使っているのですが、世代管理の設定を勘違いしていたのでメモを残しておきます。

[rails]unicornでpryを使う

先日、pryでデバッグする という記事を書きましたが、こちらはrails server(フォアグランド)でアプリを立ち上げた際のデバッグ方法でした。