【发布时间】:2017-08-03 01:54:26
【问题描述】:
我复制了我试图点击的某个元素的 xPath 并获得了以下内容:
//*[@id="ctl00_ctl00_ctl00_body_homebody_PageMainContent_ResultsGrid_ctl00__0"]/td[1]/a
然后我的代码包含以下内容:
driver.find_element_by_id("//*[@id="ctl00_ctl00_ctl00_body_homebody_PageMainContent_ResultsGrid_ctl00__0"]/td[1]/a").click()
知道为什么我可能会收到此错误:r aise exception_class(消息,屏幕,堆栈跟踪) selenium.common.exceptions.NoSuchElementException:消息:没有这样的元素:无法找到元素
【问题讨论】:
-
"//*[@id="ctl00_ctl00_ctl00_body_homebody_PageMainContent_ResultsGrid_ctl00__0"]/td[1]/a"不是 Python 中的有效字符串,请尝试:'''//*[@id="ctl00_ctl00_ctl00_body_homebody_PageMainContent_ResultsGrid_ctl00__0"]/td[1]/a''' -
它仍然找不到元素。使用 //* 而不是 //table 有什么问题吗?我都试过了,但我觉得那里可能有错误
-
这是一个 XPATH - 使用
driver.find_element_by_xpath而不是find_element_by_id -
对!太感谢了。明白了!