「current_window_handle」実行でウインドウハンドルを取得できます。
ウインドウハンドルとはウインドウ(ブラウザ)を識別する為の識別情報です。Seleniumでは、このウインドウハンドル使ってウインドウやフレームを切り替えることが出来ます。具体的にはswitch_to_window(xxx)でxxxの部分にウインドウハンドルを指定することで制御対象とするウインドウの切り替えを行います。
「current_window_handle」と同じくウインドウハンドルを取得するメソッドに「window_handles」がありますが、前者はカレントウインドウ(制御対象になっているウインドウ)のみのハンドルを取得するのに対し、後者はカレントセッション(指定したインスタンス)全てのハンドルを取得するという違いがあります。
説明
◆メソッド ・current_window_handle ◆使用形態 ・driver.current_window_handle ◆備考 ・指定したインスタンスでカレントウインドウのハンドルのみを取得する ◆関連項目 ・ウィンドウの位置を取得する ・ウィンドウのサイズを取得する
サンプル
from selenium import webdriver from selenium.webdriver.chrome import service #ChromeDriverのパスを変数に設定 CHROMEDRIVER = "D:\driver\chromedriver.exe" #ChromeDriverのstartとstopを制御するServiceオブジェクトを介してパスを渡す chrome_service = service.Service(executable_path=CHROMEDRIVER) #Chromeを起動 driver = webdriver.Chrome(service=chrome_service) #指定したURLに遷移 driver.get("https://www.yahoo.co.jp") #カレントページのソースコードを取得して表示 print(driver.current_window_handle)
※selenium version 4.1.3で動作確認をしています(ブラウザのUIや属性値などが変更された場合、実行結果が異なる可能性があります)
実行結果
CDwindow-4312f5dd-eq55-8876-32cb-97frde543890
動画デモ
※字幕をONにすると解説のテロップが表示されます※