selenium模块中的find_element_by_id方法无法使用,改用driver.find_element(by=By.ID, value=None)

这篇具有很好参考价值的文章主要介绍了selenium模块中的find_element_by_id方法无法使用,改用driver.find_element(by=By.ID, value=None)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在学习selenium模块的时候,由于是在白嫖的,往年教程

import time
from selenium import webdriver

driver = webdriver.Chrome()

driver.get("https://www.csdn.net/")

driver.find_element_by_id('toolbar-search-input').send_keys('python')
driver.find_element_by_id('toolbar-search-button').click()

time.sleep(6)
driver.quit()

点击运行后报错

AttributeError: 'WebDriver' object has no attribute 'find_element_by_id'

'WebDriver'没有find_element_by_id这个方法

搜索出来的基本都是就这个方法进行讲解

在尝试方法中发现,finde_element这个方法有

点开配置文件,发现通过find换了写法,尝试用这种写法去写

selenium模块中的find_element_by_id方法无法使用,改用driver.find_element(by=By.ID, value=None)

import time
from selenium import webdriver

driver = webdriver.Chrome()

driver.get("https://www.csdn.net/")
driver.find_element(by=By.ID, value='toolbar-search-input').send_keys('python')

driver.find_element(by=By.ID, value='toolbar-search-button').click()

time.sleep(6)
driver.quit()

 又报NameError的错

selenium模块中的find_element_by_id方法无法使用,改用driver.find_element(by=By.ID, value=None)

 By没有定义,声明By模块,最后改良的代码

import time
from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()

driver.get("https://www.csdn.net/")
driver.find_element(by=By.ID, value='toolbar-search-input').send_keys('python')

driver.find_element(by=By.ID, value='toolbar-search-button').click()

time.sleep(6)
driver.quit()

然后运行,成功运行

selenium模块中的find_element_by_id方法无法使用,改用driver.find_element(by=By.ID, value=None)

如果遇到找不到方法的情况,如果自己的版本是最新的版本,那么很有可能这种方法已经不用了

可以去查看一下官方的文档,或者直接查看配置文件,对自己的代码进行修改文章来源地址https://www.toymoban.com/news/detail-504735.html

driver.find_element(By.XPATH, '//*[@id="kw"]') 
# 根据xpath选择元素(万金油)
driver.find_element(By.CSS_SELECTOR, '#kw') 
# 根据css选择器选择元素
driver.find_element(By.NAME, 'wd') 
# 根据name属性值选择元素
driver.find_element(By.CLASS_NAME, 's_ipt') 
# 根据类名选择元素
driver.find_element(By.LINK_TEXT, 'hao123') 
# 根据链接文本选择元素
driver.find_element(By.PARTIAL_LINK_TEXT, 'hao') 
# 根据包含文本选择
driver.find_element(By.TAG_NAME, 'title') 
# 根据标签名选择
# 目标元素在当前html中是唯一标签或众多标签第一个时候使用
driver.find_element(By.ID, 'su') 
# 根据id选择

到了这里,关于selenium模块中的find_element_by_id方法无法使用,改用driver.find_element(by=By.ID, value=None)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包