使用selenium自动控制浏览器找不到Chromedriver问题
作者:weixin_42508908 发布时间:2023-02-02 01:32:33
ChromeDriver 是 google 为网站开发人员提供的自动化测试接口,它是 selenium2 和 chrome浏览器 进行通信的桥梁。selenium 通过一套协议(JsonWireProtocol :https://github.com/SeleniumHQ/selenium/wiki/JsonWireProtocol)和 ChromeDriver 进行通信,selenium 实质上是对这套协议的底层封装,同时提供外部 WebDriver 的上层调用类库。
下面看下解决使用selenium自动控制浏览器找不到Chromedriver,具体内容如下:
最近学习爬虫过程中使用了selenium模块通过调用Chromedriver来实现自动控制Chrome,但其中遇到一些问题,在此总结。
首先,下载ChromeDriver时一定要对应好自己的浏览器版本,下载链接:http://npm.taobao.org/mirrors/chromedriver/
将下载好的ChromeDriver保存至Chrome浏览器的安装文件夹下
然后将ChromeDriver的路径配置到环境变量Path中,此时正常情况下调用ChromeDriver应该可以正常使用,
from selenium import webdriver
browser = webdriver.Chrome()
browser.get('http://www.baidu.com/')
或者
from selenium import webdriver
options = webdriver.ChromeOptions()
#options.add_argument('user-agent="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36"')
driver = webdriver.Chrome(chrome_options=options)
driver.get('https://www.baidu.com/')
但有的电脑即使配置完环境变量依旧不能正常使用,看了其他博主所写,有的建议将ChromeDriver放置在python的安装目录以及工作目录下,结果是依然不起作用,产生报错:WebDriverException: Message: unknown error: cannot find Chrome binary那就只能采用设置路径的方法进行调用,如下:
from selenium import webdriver
browser = webdriver.Chrome('你的Chromedriver路径')
browser.get('http://www.baidu.com/')
或
from selenium import webdriver
options = webdriver.ChromeOptions()
#options.binary_location = r'你的Chrome安装路径'
#options.add_argument('user-agent="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36"')
driver = webdriver.Chrome(chrome_options=options,executable_path=r'你的Chromedriver路径')
driver.get('https://www.baidu.com/')
总结
以上所述是小编给大家介绍的解决使用selenium自动控制浏览器找不到Chromedriver问题网站的支持!
来源:https://blog.csdn.net/weixin_42508908/article/details/85986029


猜你喜欢
- 一、场景浏览器访问淘宝,再访问天猫,继续访问1688......此时,浏览器中的cookie是什么状态?显然,包含上述3个网站的所有cook
- Requests 继承了urllib2的所有特性。Requests支持HTTP连接保持和连接池,支持使用cookie保持会话,支持
- 1. 写在前面笔者在不同电脑上多次尝试了Hyper-V下的安装配置。个人感觉,使用体验和VMware没差(除了一次在较低电量情况下出现了GU
- Oracle 正则表达式实例详解FORM开发中的按行拆分需求:拆分后的行要有规律,并按前后层次排序 需求分析如下: &
- 近期要在生产环境上使用react,所以,自己学习了一下,写了一个简单的留言板小程序。完整的代码可以到这里下载:message-boardUs
- 环境搭建1.首先需要自行安装node环境2.然后全局安装 expressnpm install -g express3.创建express项
- 前文学习:python数据结构:数据类型.python数据结构输入输出及控制和异常.今天我们来学习面向对象编程,面向对象这种编程方式非常重要
- 以GraphViz为例:下载安装好的路径名字为C:/Program Files (x86)/Graphviz2.38import osos.
- 么是约瑟夫问题?约瑟夫问题是一个有趣的数学游戏,游戏规则如下:1、N个人围成一个圈,编号从1开始,依次到N。2、编号为M的游戏参与者开始报数
- 我们有理由相信采用新的内核版本(2.2.16-3 smp)也应该有性能的提升: OS2: Newer minor version kerne
- 目录何为模式匹配下载pampy栗子单个字符匹配匹配开头和结尾匹配字典的key使用特性1: HEAD 和 TAIL特性2:甚至能匹配字典中的键
- 在Python中,装饰器一般用来修饰函数,实现公共功能,达到代码复用的目的。在函数定义前加上@xxxx,然后函数就注入了某些行为,很神奇!然
- c++运算速度快于python,python简单易写。很多时候对于已有的c++代码也不想用python重写,此时就自然而然地想到用pytho
- /** * The maximum supported {@code LocalTime}, '23:59:59.999999999
- 前言大家都知道,一条查询语句走了索引和没走索引的查询效率是非常大的,在我们建好了表,建好了索引后,但是一些不好的sql会导致我们的索引失效,
- yolov5的head修改为decouple headyolox的decoupled head结构本来想将yolov5的head修改为dec
- 我在Window XP中安装了Gvim7.2,然后桌面上出现了三个快捷方式,gvim72.exe,gvim read-only,gvim e
- 如何做一个自己的QQ?这不是什么新鲜的东西,看看代码:refresh.htm<HTML><HEAD><titl
- Mysql的安装方法 安装mysql的步骤如下:请注意按图中所示,有些选项和默认是不一样的。同时,如果您是重新安装mysql的话,要注意先备
- 完成asp语言对XML文档中指定节点文本的增加、删除、修改、查看 <% '-------------------