python3でスクレイピングをしていた時にウィンドウの変更が上手くいかないことがあったので方法を残しておきます。
スクレイピングでは開いているページとは別の他のタブを操作したい場合、そのタブのウィンドウハンドルを指定する必要があります。
その操作方法の一つがこちらです。
# 現在のハンドルを取得
old_hdl = driver.window_handles[0]
# window_handlesで一覧を取得した後、old_hdlと一致しないものを探す。それがもう一方
new_hdl = None
for handle in driver.window_handles:
if new_hdl != handle:
size_hdl = handle
break
# ウィンドウハンドルをnew_hdlに変更
driver.switch_to_window(new_hdl)
# ウィンドウハンドルをold_hdlに戻す
driver.switch_to_window(old_hdl)
タブが2つでもう一方のハンドルを知りたいときに使えます。
何故か上手くウィンドウハンドルが切り替わらないサイトなどはこちらを試してみて下さい。
最高の6ヶ月!超実践型プログラミングスクール【.pro】
![[python-auto] 自動化の備忘録ブログ](https://python-auto.com/wp-content/uploads/2019/11/cropped-電球のみ.png)