【问题标题】:How to ignore, or discard overlayed dialog box on website?如何忽略或丢弃网站上的叠加对话框?
【发布时间】:2020-01-08 19:12:49
【问题描述】:

我尝试解析 this site 带铬驱动程序 但是有一个对话框搞砸了

有没有办法放弃对话框或选择No, thanks按钮?

【问题讨论】:

  • 你遇到了什么问题?您可以发布您为解决此问题而编写的 selenium-webdriver 代码吗?
  • 我不知道如何搜索对话框,那么如何从那里提取“不,谢谢”按钮然后单击它?不确定那个按钮的 Xpath 是什么?
  • 您可以等待并单击一个简单的 CSS 选择器 button[data-analytics-action='Click Cancel'],以关闭弹出窗口。

标签: python-3.x selenium-webdriver xpath css-selectors webdriverwait


【解决方案1】:

To click()on 元素上的文本为 不,谢谢 您必须为所需的 element_to_be_clickable() 诱导 WebDriverWait 并且您可以使用以下任一 @ 987654321@:

  • CSS_SELECTOR:

    driver.get("https://www2.sgx.com/derivatives/delayed-prices-futures?cc=CN&category=equityindex")
    WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button.sgx-button--link[data-action='cancel'][data-analytics-action='Click Cancel']"))).click()
    
  • XPATH:

    driver.get("https://www2.sgx.com/derivatives/delayed-prices-futures?cc=CN&category=equityindex")
    WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "//button[@class='sgx-button--link' and @data-action='cancel'][@data-analytics-action='Click Cancel']"))).click()
    
  • 浏览器快照:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-08
    • 2018-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-23
    • 2018-09-14
    相关资源
    最近更新 更多