【发布时间】:2021-01-08 15:13:24
【问题描述】:
在我想使用 Selenium 进行交互的网站上,有以下部分的 html 代码:
<a href="#" onclick="editToggle('default_name_span', 'edit_name')">
<img src="img/rename.png?1" alt="change name" title="change name">
</a>
这显示了一个小图像,单击该图像可以更改该网页上项目的名称。我试过了
webdriver.find_element_by_css_selector("a[onclick*=edit_name]").click()
webdriver 是我的 selenium.webdriver 实例。不幸的是,这会引发ElementNotInteractableException。我尝试了 5 秒的虚拟等待,还尝试了 EC.element_to_be_clickable 和 EC.presence_of_element_located 和 WebDriverWait。
我尝试点击img。这工作没有错误,但没有在网页上产生任何(可见)结果。
也尝试使用 XPATH:
WebDriverWait(webdriver, 15).until(EC.presence_of_element_located((By.XPATH, '//*[@id="default_name_span"]/a')))
WebDriverWait(webdriver, 15).until(EC.element_to_be_clickable((By.XPATH, '//*[@id="default_name_span"]/a')))
webdriver.find_element_by_xpath('//*[@id="default_name_span"]/a').click();
这会引发相同的异常。
我怎样才能点击这里?有什么想法吗?
我没有找到关于 SO 的答案,但如果有,并且您提供了链接,我很乐意接受它作为答案。
【问题讨论】:
-
能把网页链接分享给我们吗?泰
-
它是浏览器游戏的一部分,没有登录数据就无法访问,因此无法提供没有登录数据的链接。
标签: python selenium xpath css-selectors webdriverwait