选择包含selenium的div元素的单选按钮

2024-04-19 18:28:30 发布

您现在位置:Python中文网/ 问答频道 /正文

正如标题所示,我在让selenium单击单选按钮时遇到了一些问题,因为它认为它会单击div元素:

重要提示:

我忘了提到div是由使用jQuery的javascript函数触发的。你知道吗

/尾注

你知道吗selenium.common.exceptions异常.WebDriverException:消息:未知错误:元素在点(725597)处不可单击。其他元素将收到点击:。。。你知道吗

令人恼火的是,单选按钮不是div的子元素,它的大小足以覆盖放置收音机的区域。 我试过使用:

element = WebDriverWait(driver, 20).until(
    EC.visibility_of_element_located((By.CSS_SELECTOR, "#exportValuesLabelsCSV3.radio"))

以及预期条件类的其他方法,但都不起作用。你知道吗


Tags: 函数div消息元素标题selenium错误element
1条回答
网友
1楼 · 发布于 2024-04-19 18:28:30

这个问题的解决方案是检查jQuery是否完成了对页面的处理:

element = WebDriverWait(driver, 20).until(
            lambda s: s.execute_script("return jQuery.active == 0"))

执行的脚本返回一个布尔值,因此:

if element:
            csvRadio = driver.find_element_by_css_selector("#exportValuesLabelsCSV3.radio")
            csvRadio.click()
        else:
            pass

我希望这能在将来帮助别人:)

相关问题 更多 >