准备爬取一个动态网站的内容。逆向分析找json文件太过困难。准备使用selenium进行自动化模拟登陆抓取,今天在配置谷歌浏览器chromedriver插件的时候。pycharm运行出现如图问题:
先说一下原理,才能明白问题到底出在什么地方。
1、计算机path环境变量是指OS查找或执行的应用程序的路径。
2、在此配置环境变量的目的就是为了指引python能找到这个程序进行调用。但是python运行的时候找不到chromedriver.exe文件,就出现了如图的问题,报错:Message: ‘chromedriver’ executable needs to be in PATH。
3、python运行时,首先会在python.exe文件所在的目录下查找 chromedriver.exe(如果将drver放在与python.exe文件同一个目录,就不需要配什么环境变量),如果有对直接使用,如果没有则会在win的全局环境中查找。
根据原理解决办法有以下几个:
一:匹配与谷歌浏览器对应版本号的chromedriver.exe文件。(这个网络上相关帖子很多,不再赘述)
二:环境变量配置的问题
1、路径一定要正确,对应路径在谷歌浏览器根目录下。填写路径的时候chromedriver.exe不用填写。
2、注意填写在系统变量,用户变量我这边添加后未成功。
三:根据上面所说的原理,可以简单粗暴的直接把chromedriver.exe文件放在python的根目录下。就直接拷贝chromedriver.exe文件放在python文件所在位置。
操作完成后,重启计算机。重新运行程序:
1
2
3
4from selenium import webdriver browser = webdriver.Chrome() browser.get('http://www.bing.com/')
问题解决,显示成功
ps.如果以上方法都无法解决,并且版本号没问题。chromedriver.exe文件也放在谷歌浏览器根目录下。可以直接在程序中声明路径进行调用。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15# _*_ coding=utf-8 _*_ from selenium import webdriver # 设置你自己的chormedriver存放路径 driver_path = r"C:Program FilesGoogleChromeApplicationchromedriver.exe" executable_path = driver_path driver = webdriver.Chrome(executable_path) driver.get("https://www.bing.com") print(driver.page_source)
也能成功运行
最后
以上就是背后毛巾最近收集整理的关于Message: ‘chromedriver‘ executable needs to be in PATH.问题的解决办法。的全部内容,更多相关Message:内容请搜索靠谱客的其他文章。
发表评论 取消回复