2020-11-10
阅读量:
3410
Python的selenium中出现以下错误no such element: Unable to locate element: 的原因是什么?
那么我们可以试试用如下代码 来将 第一个搜索结果里面的文本内容 打印出来
from selenium import webdriver wd = webdriver.Chrome(r'd:\webdrivers\chromedriver.exe') wd.get('https://www.baidu.com') element = wd.find_element_by_id('kw') element.send_keys('白月黑羽\n')# id 为 1 的元素 就是第一个搜索结果element = wd.find_element_by_id('1')# 打印出 第一个搜索结果的文本字符串print (element.text)
如果大家去运行一下,就会发现有如下异常抛出
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"id","selector":"1"}
NoSuchElementException
的意思就是在当前的网页上 找不到该元素, 就是找不到 id 为 1 的元素。
为什么呢?
因为我们的代码执行的速度比 百度服务器响应的速度 快。
百度还没有来得及 返回搜索结果,我们就执行了如下代码
element = wd.find_element_by_id('1')
在那短暂的瞬间, 网页上是没有用 id为1的元素的 (因为还没有搜索结果呢)。自然就会报告错误 id为1 的元素不存在了。






评论(0)


暂无数据
推荐帖子
0条评论
0条评论
0条评论