lovelorn0327 发表于 2015-2-3 22:38:51

selenium显示Message: no such element

进入新浪首页,想点击【NBA】这个Link
<a href="http://sports.sina.com.cn/nba/">NBA</a>
然后使用Xpath
driver.find_element_by_xpath('//a').click()_
然后运行到这一步就报错了

Traceback (most recent call last):
File "D:/testspace/webTest.py", line 19, in <module>
    driver.find_element_by_xpath('//a]http://sports.sina.com.cn/nba/"]').click()
File "D:\tools\python2.7.9\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 230, in find_element_by_xpath
    return self.find_element(by=By.XPATH, value=xpath)
File "D:\tools\python2.7.9\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 662, in find_element
    {'using': by, 'value': value})['value']
File "D:\tools\python2.7.9\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 173, in execute
    self.error_handler.check_response(response)
File "D:\tools\python2.7.9\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 166, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element
(Session info: chrome=40.0.2214.93)
(Driver info: chromedriver=2.13.307647 (5a7d0541ebc58e69994a6fb2ed930f45261f3c29),platform=Windows NT 6.1 SP1 x86)

显示没有这个元素。

请教各位这是什么情况呀?
因为这个写法是按照教程写的
以下是教程内容
【xpath:link
driver.find_element_by_xpath("//a[@href='http://www.baidu.com/']").click()
#有个叫a 的标签,他有个链接href='http://www.baidu.com/ 的元素】

希望得到指点,谢谢

zoulong1989 发表于 2015-2-4 08:16:54

抓的xpath 貌似有问题请用火狐,firepath 和firebug

lovelorn0327 发表于 2015-2-4 12:26:14

@zoulong1989
您好:
请教下是我抓的内容有错误还是本身就有问题呀?是不是浏览器的问题呀

ntgecm 发表于 2015-2-4 15:38:04

可能加载慢或没有定位到frame导致,可以从这个方面去考虑

lovelorn0327 发表于 2015-2-4 22:02:14

因为我还是初学者,这方面的知识还是比较欠缺,想在求教下各位,我该从哪个方面去定位这个问题呀?再次感谢

joykao 发表于 2015-2-5 10:14:05

你的xpath值应该是不对的吧,用xpath找元素的优先级应该放到最低,链接用linkText不是也挺好么?

xchen 发表于 2015-2-12 16:00:54

少了个@么? driver.find_element_by_xpath('//a[@href="http://sports.sina.com.cn/nba/"]').click()_

huangyunqiang 发表于 2017-9-11 17:26:42

应该是这样吧 driver.find_element_by_xpath("//a[@href='http://sports.sina.com.cn/nba/']").click()
页: [1]
查看完整版本: selenium显示Message: no such element