📑打牌 : da pai ge的个人主页
🌤️个人专栏 : da pai ge的博客专栏
☁️宝剑锋从磨砺出,梅花香自苦寒来
目录
1、webdriver has no attribute "find_element_by_id"编辑
2、gecodriver needs to be in PATH编辑
3、安装了selenium报错has no attribute Chrome或者Firefox编辑
1、win10安装python环境
尤其需要注意 !勾选添加环境变量!
按照这个教程来安装python:
https://blog.csdn.net/qq_27149279/article/details/107178950
2、验证python是否安装成功
cmd执行python --version
3、安装selenium
1)复制pip.exe的安装路径,进入cmd执行 cd并进入到pip.exe的安装路径
示例路径:
2)执行命令:( 不推荐使用该命令)pip install selenium(目前最新版本为4,老师讲的是3,建议使用 pip install Selenium==3.12.0来指定版本下载)
执行结束如图:
注意:warning信息不需要关注
3)检查selenium包是否安装成功,进入到python路径下的lib文件夹下(或者cmd执行命令:pip show selenium)
示例:
4、安装驱动
注意!!!安装的驱动必须放在系统环境变量下!
所有浏览器的驱动都在:https://www.selenium.dev/documentation/webdriver/getting_started/install_drivers/
下载好的驱动建议直接放在python路径下,就不用添加系统环境变量了还有浏览器也要添加驱动路径是C:\Program Files (x86)\Microsoft\Edge\Application
5、pycharm安装python环境
常见问题:
1、webdriver has no attribute "find_element_by_id"
原因:下载selenium没有指定版本,导致版本过高,当前语法不支持
解决办法:cmd执行:1)pip uninstall selenium 2)pip install Selenium==3.12.0
2、gecodriver needs to be in PATH
原因:驱动存放路径没有添加系统环境变量
解决办法:
1)找到驱动存放路径,复制路径
2)将复制的路径添加到系统环境变量中(PATH里)
3、安装了selenium报错has no attribute Chrome或者Firefox
原因:pycharm没有加上selenium包
解决办法:步骤五重新再执行一遍,点击确定就会出现当前python环境下安装的最新的包
4、绕过百度安全验证
创建驱动对象后加上代码:
driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument",{'source':'Object.defineProperty(navigator,"webdriver",{get:()=>undefind})'})
位置如图:
5、selenium+火狐浏览器,不显示alert弹窗
解决办法:
修改火狐浏览器的配置:
修改为自己的文件路径!!
6、使用pip安装selenium出现报错,pip使用报错
解决办法:
在pycharm里手动安装selenium
7、代码案例
import time
from selenium import webdriver
driver = webdriver.Edge("C:\Program Files (x86)\Microsoft\Edge\Application\msedgedriver.exe")
driver.get('http://login.html')
driver.find_element_by_css_selector("#username").send_keys("mht")
time.sleep(30)
driver.find_element_by_css_selector("#password").send_keys("6666")
time.sleep(30)
driver.find_element_by_css_selector("#submit").click()
time.sleep(30)
import time
from selenium import webdriver
driver = webdriver.Edge("C:\Program Files (x86)\Microsoft\Edge\Application\msedgedriver.exe")
driver.get('http://.html')
driver.find_element_by_css_selector("body > div.nav > a:nth-child(4)").click()
cur_url = driver.current_url
time.sleep(10)
cur_title = driver.find_element_by_css_selector("body > div.nav > span.title").text
time.sleep(10)
print(cur_url)
driver.quit()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现