🦔
SafariをRubyとSeleniumで操作してみた
SafariをRubyとSeleniumで操作した際の手順を記録しておきます。
1.Safariを操作可能にする
Safariを操作可能にするために、「開発」メニューを出してリモートオートメーションを許可します。
Safariはメニューから設定できますが、他のブラウザを操作する場合は個別にドライバをインストールする必要があるようです。
1.1.「開発」メニューを出す
1.2.リモートオートメーションを許可する
2.selenium-webdriverのインストール
gem install selenium-webdriver
3.自動化コードを実行する
#! /usr/bin/env ruby
#
# google検索結果のタイトルのみを取得する
require 'selenium-webdriver'
driver = Selenium::WebDriver.for :safari # 使用するブラウザを選択
driver.navigate.to "http://www.google.com" #URL指定
puts driver.title #ページタイトルを出力
element = driver.find_element(:id, 'APjFqb') # 検索窓指定
element.send_keys('ruby') # 検索キー
element.submit
sleep 3
search = driver.find_element(:id, "search") # 検索結果指定
titles = search.find_elements(:tag_name, "h3") # 複数の検索結果タイトル
titles.each do |t|
puts t.text # 検索結果のタイトルを出力
end
driver.quit # ブラウザを閉じて終了
Discussion