前提:
python 3.8
Seleniumを使う
Windows10
Javascriptのアラート(ポップアップ)をクリックする必要があったのでメモ
最近のアラートはスタイルシートのものが多いですが、久しぶりにJavascriptのアラートに出会ったのでメモします。
※ちなみにスタイルシートで作成されたアラートを操作するときはCSSセレクターで。xpathやIDだとうまくいかないことおおいです。
参考サイト
①アラートがでてくるまで待つ:alert_is_present
②アラートを操作する
↑文字入力やベーシック認証の解説もあります。
前提:
python:変数driverにはSeleniumのクロームドライバーがすでに設定済みとする
import time
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.alert import Alert
wait = WebDriverWait(driver,10)
try:
wait.until(EC.alert_is_present()) #Javascriptのアラートがでてくるまで待つ
Alert(driver).accept() #アラート受け入れる(OKを押す)
time.sleep(1) #1秒まつ
except Exception as e:
print("アラートの処理でエラー")
ただクリックするだけなら、
簡単でした。
time.sleep(1)はあまりにも早すぎると止められたり、処理でているかわからないと指摘をうけるのであえていれています。