今回は、Python、seleniumでのウインドウハンドル取得方法についての説明になります。
ウインドウハンドルとはウインドウごとに割り当てられている識別情報のことですが、seleniumでは、ウインドウの切替を行う場合には、この番号を使用して、switch_to_window(ウインドウハンドル)とすることで、制御対象のウインドウの切替を行います。
簡単な使用例として載せているものは、Chrome用になります。
ウインドウハンドルの取得方法としては、今現在の制御対象のカレントウインドウハンドルを取得する方法と、現在のブラウザのドライバーがもっているすべてのウインドウハンドルを取得する方法があります。
目次
はじめに、カレントウインドウハンドルの取得例は以下のようなものになります。
1.カレントウインドウハンドル取得例
driver.current_window_handle
これにてブラウザーのドライバーのカレントウインドウハンドルが取得できます。
これに、ライブラリのインポートなど含めた簡単な使用例は以下のようなものになります。
Google検索画面が開き、カレントウインドウハンドルを取得してプリントするという内容になります。
(selenium ver.4.6以降の場合)
from selenium import webdriver
######################################################################
driver = webdriver.Chrome() ###################################################################### driver.get('https://www.google.com/') #カレントページのソースコードを取得して表示 print(driver.current_window_handle)
selenium ver.4.6以前の場合の例は、以下に載せています。
次に、現在のドライバが持っているすべてのウインドウハンドルの取得例は以下のようなものになります。
2.すべてのウインドウハンドル取得例
driver.window_handles
これにてブラウザーのドライバーが持っているすべてのウインドウハンドルが取得できます。
先程と同様、これに、ライブラリのインポートなど含めた簡単な使用例は以下のようなものになります。
Google検索画面が開き、ドライバーのすべてのウインドウハンドルを取得してプリントするという内容になります。
(selenium ver.4.6以降の場合)
from selenium import webdriver #######################################################################
driver = webdriver.Chrome() ###################################################################### driver.get('https://www.google.com/') #カレントページのソースコードを取得して表示 print(driver.window_handles)
以上がドライバーの制御対象のカレントウインドウハンドルとすべてのウインドウハンドルの取得方法になります。
関連記事:
【Python】キーボード、キー入力判定方法 - Django Girls and Boys 備忘録
【Python】keyboardライブラリでのキー入力検出に使用可能なキーの種類 - Django Girls and Boys 備忘録
【PythonからWeb操作】seleniumのインストール手順 - Django Girls and Boys 備忘録