当遇到AttributeError: 'WebDriver' object has no attribute 'find_element_by_id'异常时,首先需要检查Selenium库的版本,确保是最新版本。其次,需要仔细检查代码中find_element_by_id的拼写。通过以上方法,可以解决该问题。
searchTag = driver.find_element_by_id("su") 在版本没有更新之前,通常情况下运行都是能够正确定位到对应的元素,但是Selenium经过版本升级之后,运行后会报错,以driver.find_element_by_id(“value”)为例(其他报错也是类似下面的报错信息),运行后会出现上面的错误。 4版本的Selenium已经不再支持上面的写法,我们需...
2、版本问题 我们直到selenium这个东西,历经3代,对于webdriver的支持也不太一样。在selenium3中,firefox的dirver就不是内置的了,需要手动下载,且对firefox浏览器版本也有要求,同时其他的浏览器也都有对应的驱动。总体而言在selenium2中,由于除了firefox外所有的驱动都不是官方开发的,所以说有可能出现不兼容的情况。 3、...
Selenium官方给了八种定位方法 1.find_element_by_class_name通过class name定位元素 我们拿Pythonfree网站来举例,点击右上角的搜索框。 鼠标右击搜索图标,然后选择检查 可以看到搜索标签的class name是btn btn-default 所以find_element_by_class_name方法里的参数就填btn:#coding=utf-8 ...
完美解决:python selenium 报错 AttributeError: ‘WebDriver’ object has no attribute ‘find_element_by_id’ 代码如下 报错如下: 解决方式 selenium版本更新:find_element() 版本更新了,现在的写法为: ID,'kw').sendkeys('搜索')//关注公众号:小千哥...
from selenium import webdriver from selenium.common.exceptions import NoSuchElementException from selenium.webdriver.chrome.options import Options def initialize_driver(): options = Options() driver = webdriver.Chrome(options=options) return driver def find_element_by_id(driver, element_id): try: eleme...
关于新版本selenium定位元素报错:‘WebDriver‘ object has no attribute ‘find_element_by_id‘等问题 我们最后到达的地方,实际上就是我们心中原本想要去的地方。
在Selenium中,WebDriver对象是通过浏览器驱动程序与浏览器进行通信的。 接下来,我们来分析“WebDriver object has no attribute find_element_by_id”错误的原因。这个错误意味着WebDriver对象没有“find_element_by_id”属性。这是因为在Selenium中,find_element_by_id方法并不是WebDriver对象的直接方法,而是位于...
不知道这个网页的构造,为什么这样找不到元素呢 from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.hbooker.com/chapter/book_chapter_detail/100364049") sleep(5) content=driver.find_element_by_id('J_BookCnt')python...