「window_handle」実行でウインドウハンドルを取得できます。
ウインドウハンドルとはウインドウ(ブラウザ)を識別する為の識別情報です。Seleniumでは、このウインドウハンドル使ってウインドウやフレームを切り替えることが出来ます。具体的にはswitch_to.window(xxx)でxxxの部分にウインドウハンドルを指定することで制御対象とするウインドウの切り替えを行います。
「window_handle」と同じくウインドウハンドルを取得するメソッドに「window_handles」がありますが、前者はカレントウインドウ(制御対象になっているウインドウ)のみのハンドルを取得するのに対し、後者はカレントセッション(指定したインスタンス)全てのハンドルを取得するという違いがあります。
説明
◆メソッド ・window_handle ◆使用形態 ・driver.window_handle ◆備考 ・指定したインスタンスでカレントウインドウのハンドルのみを取得する ◆関連項目 ・複数のウインドウハンドルを取得する ・全てのクッキーを取得する
サンプル
require 'selenium-webdriver' # Firefoxを起動 driver = Selenium::WebDriver.for(:firefox) # Googleページに移行 driver.get('https://www.google.co.jp/') #カレントページのソースコードを取得して表示 print(driver.window_handle)
※selenium version 4.1.0で動作確認をしています
実行結果
1193269870
動画デモ
※字幕をONにすると解説のテロップが表示されます※