Selenium安装WebDriver最新Chrome驱动(含116/117/118/119)

news2024/12/25 13:12:56
  • 📢专注于分享软件测试干货内容,欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢交流讨论:欢迎加入我们一起学习!
  • 📢资源分享:耗时200+小时精选的「软件测试」资料包
  • 📢 最困难的时候,也就是我们离成功不远的时候!

目录

    • 1、确认浏览器的版本
    • 2、找到对应的chromedriver版本
    • 5、确认chromedriver是否安装成功及解决方式
    • 最后

1、确认浏览器的版本

在浏览器的地址栏,输入chrome://version/,回车后即可查看到对应版本

在这里插入图片描述

2、找到对应的chromedriver版本

2.1 114及之前的版本可以通过点击下载chromedriver,根据版本号(只看大版本)下载对应文件
在这里插入图片描述
2.2 116版本通过点击下载chromedriver,便可直接下载压缩包。
2.3 117/118/119版本通过点击进入到 Chrome for Testing availability ,
可以看到117 Stable 稳定版本以及更高版本的测试版。

在这里插入图片描述
点击Stable,选择对应的驱动下载即可。

在这里插入图片描述
3、解压chromedriver文件,放置chrome的安装目录下

在这里插入图片描述
4、设置系统属性
1、 点击我的电脑/此电脑>>右键点击属性>>点击高级系统设置>>环境变量>>系统变量。
2、 点击系统变量中的path,点击新增,并将chrome的安装目复制填入后,点击确定。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5、确认chromedriver是否安装成功及解决方式

在pycharm里执行以下代码块,能打开访问浏览器,即为成功。

from selenium import webdriver
 
chromedriver_path = r"C:\Users\AppData\Local\Google\Chrome\Application\chromedriver.exe"
driver = webdriver.Chrome(chromedriver_path)
 
 
# 登录百度
def main():
    driver.get("https://baidu.com/")
 
 
if __name__ == '__main__':
    main()

在这里插入图片描述
PS:但如果有出现网页闪退的情况,有以下几种解决方式:
1、降低selenium版本,使用4.1.1 / 4.5.0 版本

pip --default-timeout=100 install selenium==4.1.1 -i https://pypi.tuna.tsinghua.edu.cn/simple

2、发现登录后还是闪退,但是版本号都是对应的,可能是因为driver的全局变量问题导致的
2.1 把driver放在函数外,为全局不会闪退

from selenium import webdriver
 
chromedriver_path = r"C:\Users\AppData\Local\Google\Chrome\Application\chromedriver.exe"
driver = webdriver.Chrome(chromedriver_path)
 
 
# 登录百度
def main():
    driver.get("https://baidu.com/")
 
 
if __name__ == '__main__':
    main()

2.2 不设置driver为全局,放在函数内会闪退

from selenium import webdriver
 
 
# 登录百度
def main():
    chromedriver_path =r"C:\Users\AppData\Local\Google\Chrome\Application\chromedriver.exe"
    driver = webdriver.Chrome(chromedriver_path)
    driver.get("https://baidu.com/")
 
 
if __name__ == '__main__':
    main()

2.3 也可以把driver放在函数内,只要设置为全局变量就可以

from selenium import webdriver
 
 
# 登录百度
def main():
    global driver     # 设置全局变量
    chromedriver_path =r"C:\Users\AppData\Local\Google\Chrome\Application\chromedriver.exe"
    driver = webdriver.Chrome(chromedriver_path)
    driver.get("https://baidu.com/")
 
 
if __name__ == '__main__':
    main()

chromedriver版本补充:

由于有些chromedriver版本在上述链接中找不到对应的版本,可以在下面链接中的版本号(119.0.6045.105)替换成自己需要的版本号,已经验证过啦,亲测有效。

https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/119.0.6045.105/win64/chromedriver-win64.zip

最后

如果你想学习自动化测试,那么下面这套视频应该会帮到你很多

如何逼自己1个月学完自动化测试,学完即就业,小白也能信手拈来,拿走不谢,允许白嫖....

最后我这里给你们分享一下我所积累和整理的一些文档和学习资料,有需要直接领取就可以了!


以上内容,对于软件测试的朋友来说应该是最全面最完整的备战仓库了,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你。

​​

​​​​

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1231482.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

贪吃蛇代码

一.准备 1.新建项目 2.放进照片 3.创建两个包放置图片类和入口类 二,游戏界面 package com.snake.view;import java.awt.Color; import java.awt.EventQueue; import java.awt.Font; import java.awt.Frame; import java.awt.Graphics; import java.awt.Image; i…

前缀和(c++,超详细,含二维)

前缀和与差分 当给定一段整数序列a1,a2,a3,a4,a5…an; 每次让我们求一段区间的和,正常做法是for循环遍历区间起始点到结束点,进行求和计算,但是当询问次数很多并且区间很长的时候 比如,10^5 个询问和10^6区间长度,相…

[JDK工具-2] javap 类文件解析工具-帮助理解class文件,了解Java编译器机制

文章目录 1. javap -version 版本信息2. javap -verbose 输出附加信息3. javap -l 显示行号和局部变量列表4. javap -c 对代码进行反汇编(或叫反编译生成汇编代码,一般说反编译是生成java代码),分解方法代码,也就是显示…

电机应用开发-PID控制器参数整定

PID控制器参数整定 比例调节:调节作用快,系统一出现偏差,调节器立即将偏差放大输出。 积分调节:输出变化和输入偏差的积分成正比。输出不仅取决于偏差大小,还取决于偏差存在的时间。只要有偏差存在,尽管偏差…

【23真题】超难985!做完感觉没学过!

本套试卷难度分析:22年西北工业大学827考研真题,我也发布过,若有需要,戳这里自取!本套试题内容有难度,题目考察全为大题,题目不多!但是题目都很新颖,状态方程的题目考察较…

MySQL为什么选择了B+树

首先MySQL的数据**(索引记录)**是存在磁盘里的,磁盘读取非常慢,所以要尽可能减少磁盘操作,因此我们需要更好的利用索引。 首先索引按顺序排列了数据,那么很显然最好的查找方式是二分查找,数组自…

解决证书加密问题:OpenSSL与urllib3的兼容性与优化

在使用客户端证书进行加密通信时,用户可能会遇到一些问题。特别是当客户端证书被加密并需要密码保护时,OpenSSL会要求用户输入密码。这对于包含多个调用的大型会话来说并不方便,因为密码无法在连接的多个调用之间进行缓存和重复使用。用户希望…

改进YOLOv8:结合ConvNeXt V2骨干网络!使用MAE共同设计和扩展ConvNet

🗝️YOLOv8实战宝典--星级指南:从入门到精通,您不可错过的技巧   -- 聚焦于YOLO的 最新版本, 对颈部网络改进、添加局部注意力、增加检测头部,实测涨点 💡 深入浅出YOLOv8:我的专业笔记与技术总结   -- YOLOv8轻松上手, 适用技术小白,文章代码齐全,仅需 …

java桌面程序

目标之一是把打印导出的功能最终用java实现一套,首先选定javafx,因为idea默认创建工程就带的javafx,没找到swing。 创建工程,这里要选1.8,高版本jdk默认不带fx 实现主界面的代码 package sample;import javafx.app…

【DevOps】Git 图文详解(五):远程仓库

Git 图文详解(五):远程仓库 1.远程用户登录1.1 🔑 远程用户登录:HTTS1.2 🔑 远程用户登录:SSH 2.远程仓库指令 🔥3.推送 push / 拉取 pull4.fetch 与 pull 有什么不同 ? …

通过easyexcel实现数据导入功能

上一篇文章通过easyexcel导出数据到excel表格已经实现了简单的数据导出功能,这篇文章也介绍一下怎么通过easyexcel从excel表格中导入数据。 目录 一、前端代码 index.html index.js 二、后端代码 controller service SongServiceImpl 三、功能预览 四、后端…

Run Legends将健身运动游戏化,使用户保持健康并了解Web3游戏

最近,我们有机会采访Talofa Games的首席执行官兼创始人Jenny Xu,一起讨论游戏开发,Talofa Games是Run Legends这款健身游戏的开发工作室。她已经创作了超过一百款游戏,对于推动游戏的可能性并将她的创造力和叙事技巧带入她最喜爱的…

面试题-6

1.精灵图和base64的区别是什么? 精灵图:把多张小图整合到一张大图上,利用定位的一些属性把小图显示在页面上,当访问页面可以减少请求,提高加载速度 base64:传输8bit字节代码的编码方式,把原本二进制形式转为64个字符的单位,最后组成字符串 …

深入解析序列模型:全面阐释 RNN、LSTM 与 Seq2Seq 的秘密

探索序列建模的基础知识和应用。 简介 序列建模是许多领域的一个重要问题,包括自然语言处理 (NLP)、语音识别和语音合成、时间序列预测、音乐生成和「生物信息学」。所有这些任务的共同点是它们需要坚持。接下来的事情的预测是基于历史的。例如,在“哈桑…

漏洞复现--飞企互联FE业务协作平台ShowImageServlet任意文件读取

免责声明: 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直…

【C/C++】递归算法

信封 某人写了n封信和n个信封&#xff0c;如果所有的信都装错了信封。求所有的信都装错信封共有多少种不同情况 #include <iostream> using namespace std; const int N 30; int n; long f[N];int main() {scanf("%d", &n);f[1] 0, f[2] 1;for (int …

面向开发者的Android

Developerhttps://developer.android.google.cn/?hlzh-cn SDK 平台工具版本说明https://developer.android.google.cn/studio/releases/platform-tools?hlzh-cn#revisions Android SDK Platform-Tools 是 Android SDK 的一个组件。它包含与 Android 平台进行交互的工具…

【Python】给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200

2、问题描述 给定一个长度为n的数列&#xff0c;将这个数列按从小到大的顺序排列。1<n<200 样例输入 5 8 3 6 4 9 样例输出 3 4 6 8 9 n int(input()) a list(map(int,input().split())) a.sort() for i in a:print(i,end ) 运行结果&#xff1a;

OceanBase 4.2.1 LTS 发版 | 一体化数据库首个长期支持版本

在刚刚结束的年度发布会上&#xff0c;OceanBase 沿着“一体化”产品战略思路&#xff0c;发布了一体化数据库的首个长期支持版本 4.2.1 LTS。作为 4.0 系列的第一个 LTS 版本&#xff0c;该版本的定位是支撑客户关键业务稳定长久运行&#xff0c;我们非常认真的打磨了这个版本…