【发布时间】:2016-06-29 23:19:29
【问题描述】:
从此页面:
https://permits.losgatosca.gov/CitizenAccess/default.aspx
我正在尝试按下建筑许可证下的“搜索许可证”按钮。
这是它的 xpath:
//*[@id="ctl00_PlaceHolderMain_TabDataList_TabsDataList_ctl01_LinksDataList_ctl00_LinkItemUrl"]/span
这是我正在使用的代码:
url = "https://permits.losgatosca.gov/CitizenAccess/default.aspx"
driver_1 = webdriver.Firefox()
driver_1.get(url)
NEXT_BUTTON_XPATH = '//*[@id="ctl00_PlaceHolderMain_TabDataList_TabsDataList_ctl01_LinksDataList_ctl00_LinkItemUrl"]/span'
# "//*[@id="ctl00_PlaceHolderMain_TabDataList_TabsDataList_ctl01_LinksDataList_ctl00_LinkItemUrl"]/span"
button = driver_1.find_element_by_xpath(NEXT_BUTTON_XPATH)
button.click()
但我收到了这条消息:
selenium.common.exceptions.NoSuchElementException:消息:无法 定位元素: {"方法":"xpath","选择器":"//*[@id=\"ctl00_PlaceHolderMain_TabDataList_TabsDataList_ctl01_LinksDataList_ctl00_LinkItemUrl\"]/span"} 堆栈跟踪:
【问题讨论】:
-
“这是它的 xpath”。你怎么知道那是正确的 xpath?
-
id="span_link_0"或#span_link_0 -
这不是 xpath。再次检查页面来源
-
@RemcoW 我正在使用 chrome 获取 Xpath。可能是错的
-
它在
frame.. 你需要先切换那个框架而不是去寻找像driver_1.switch_to_frame("ACAFrame")这样的元素