ポップアップ広告は、自動化スクリプトを使用してブラウザを制御する場合に一般的な問題です。以下は、ポップアップ広告を制御するためのいくつかの方法です。
1. `options`を使用してポップアップを無効にする:次のコードを使用して、ChromeDriverのオプションを設定してポップアップウィンドウを無効にすることができます。
“`python
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument(“–disable-popup-blocking”)
driver = webdriver.Chrome(options=options)
“`
2. `webdriver.WindowHandles`を使用してポップアップを制御する:ポップアップウィンドウが開かれた場合に、現在のウィンドウハンドルとポップアップウィンドウハンドルの両方を取得し、それぞれのウィンドウハンドルに切り替えて制御することができます。以下は、ポップアップウィンドウを制御するための基本的な例です。
“`python
from selenium import webdriver
driver = webdriver.Chrome()
# メインウィンドウのハンドルを取得します
main_window_handle = driver.current_window_handle
# ポップアップウィンドウが表示されるアクションを行います
# 全てのウィンドウハンドルを取得します
window_handles = driver.window_handles
# メインウィンドウ以外のウィンドウへ切り替えます
for handle in window_handles:
if handle != main_window_handle:
driver.switch_to.window(handle)
# ポップアップウィンドウの制御を行います
# メインウィンドウに戻ります
driver.switch_to.window(main_window_handle)
“`
3. 広告ブロッカーエクステンションを使用する:広告ブロッカーエクステンションを使用して、ポップアップ広告を自動的にブロックすることもできます。ただし、スクリプトやセレニウムによる制御では、広告ブロッカーエクステンションが自動的に無効になる場合があります。
これらの方法を試してみてください。ただし、ポップアップが表示されるウェブサイトに対してこれらの手法が効果的であるかどうかは、具体的なウェブサイトと環境に依存することに注意してください。