首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >selenium webdriver找到元素

selenium webdriver找到元素
EN

Stack Overflow用户
提问于 2017-02-24 15:33:27
回答 2查看 104关注 0票数 1

我尝试使用selenium webdriver来定位一个元素:i want click the "用户查询"

对应的html:the red frame

python:

代码语言:javascript
复制
>>> driver.find_element_by_xpath("//div[@id='container']/h1[2]/a").click()
Traceback (most recent call last):
  File "<pyshell#22>", line 1, in <module>
    driver.find_element_by_xpath("//div[@id='container']/h1[2]/a").click()
  File "D:\Python35\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 293, in find_element_by_xpath
    return self.find_element(by=By.XPATH, value=xpath)
  File "D:\Python35\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 752, in find_element
    'value': value})['value']
  File "D:\Python35\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 236, in execute
    self.error_handler.check_response(response)
  File "D:\Python35\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 192, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element
  (Session info: chrome=52.0.2743.116)
  (Driver info: chromedriver=2.7.236900,platform=Windows NT 6.1 SP1 x86)

如何定位该元素?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-02-24 16:18:31

在带有索引的xpath下面尝试这一点。

这里。1表示您的a标签的索引号。假设在您的html中,有多个标签具有不同的名称,如下所示。用户查询。假设此文本用户查询索引号是html中的一个,则使用下面的xpath。

代码语言:javascript
复制
//h1[1]/a

如果此文本用户查询索引号在html中是2,则使用下面的xpath。

代码语言:javascript
复制
 //h1[2]/a
票数 0
EN

Stack Overflow用户

发布于 2017-02-24 15:43:51

您可以尝试查找元素based on it's link text

代码语言:javascript
复制
driver.find_element_by_link_text("用户查询").click();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42433087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档