Selenium 同意 cookie 弹出

问题描述 投票:0回答:3

我已经为此苦苦挣扎了一段时间,我想同意弹出窗口,但硒只是不想单击同意按钮

我已经尝试过:

WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH,'/html/body/div[2]/div[2]/div[1]/div[2]/div[2]/button[1]/p'))).click()

    wait.until(EC.frame_to_be_available_and_switch_to_it((By.XPATH,"/html/body/div[2]")))
cookie = wait.until(EC.element_to_be_clickable((By.XPATH,"/html/body/div[2]/div[2]/div[1]/div[2]/div[2]/button[1]")))
cookie.click()

这是网站 - https://scriptblox.com/ 弹出窗口应该立即出现

selenium selenium-webdriver cookies popup
3个回答
0
投票

编辑:再次尝试(但同样,我无法测试它):

WebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.CLASS_NAME, "fc-cta-consent"))).click()

0
投票

要单击元素 Consent,您需要为 element_to_be_clickable() 引入 WebDriverWait,并且您可以使用以下任一定位器策略

  • 使用CSS_SELECTOR

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div.fc-consent-root button[aria-label='Consent'] p.fc-button-label"))).click()
    
  • 使用XPATH

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//div[@class='fc-consent-root']//button[@aria-label='Consent']//p[@class='fc-button-label' and text()='Consent']"))).click()
    
  • 注意:您必须添加以下导入:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    

0
投票

我在 WordPress 网站上有相同的横幅,但我找不到在头部、页脚或功能处安装的任何插件或标签。有谁知道如何停用它吗?

亲切的问候, 拉布罗斯

© www.soinside.com 2019 - 2024. All rights reserved.