【Python】关于使用selenium安装失败的问题(2024.1)

一、背景

在练习爬网站的时候,会遇到一些问题:

    1、代码都正确,本地解析出来没有具体内容;

    2、浏览器源码看到的内容很多,解析出来只有一部分;

    3、有些网页需要滚动鼠标才加载内容,就是所谓的动态加载。

这个时候,selenium进入我的视野,因为他能模拟浏览器操作,实现动态加载。

但是,我按照网上教程下载安装,始终都失败,然后又花费了几天的时间,都要崩溃了。。。

所幸今天终于运行成功,通过selenium打开了网页!!! 2024年1月12日 值得纪念的一天!

下面分享一下安装的经历,以及我踩的坑,可以直接去看总结部分。

二、安装chromedriver

    1、下载

    首先是找chromedriver,我电脑谷歌浏览器的版本太高了,找不到chromedriver,因为我的谷歌浏览器装了很多插件又不想卸载重装浏览器,而我的edge浏览器,早在我之前重装系统的时候被我干掉了,现在想装edge也装不上,然后我的火狐浏览器也没有现成的驱动......

    我根据网友教程去到chromedriver的下载地址基本都是支持测试版,而且谷歌的历史版本一点都不好找,找到了他还不一定有driver......

    终于皇天不负有心人,找到了这个谷歌历史版本的网站:Chromium History  请好好收藏这个网站!进入这个网站,找到自己电脑版本,下面那里谷歌版本随便选一个顺眼的,点进去。我选的: 108.0.5322.0  进去以后下载两个文件:chrome-win.zip , chromedriver_win32.zip   见下图:

(ps: 我电脑64位,奈何提供的都是32位的,其实不影响,后面接着说。)

    2、安装

    下载好文件后,chrome-win.zip  其实就是绿色版的谷歌浏览器,解压后放到你喜欢的地方就行,然后chromedriver_win32.zip   解压后里面的chromedriver.exe放到刚才谷歌浏览器文件夹。(放哪都行,但你要记住,我放在一起是方便自己)

    selenium 安装的话就: pip install selenium

    配置环境变量:最好是用户和系统的配置上去。我的浏览器文件夹是:C:\chrome,所以我的环境变量是这样的,参考下图。

    环境变量配置成功的测试方式:去命令提示符运行chromedriver,看看有无提示,参考下图。

3、代码测试
    下面两段代码,其中一段能成功打开浏览器,说明就是安装成功的。

# 代码1

from selenium import webdriver

driver = webdriver.Chrome()

driver.get("https://www.baidu.com")  # 打开百度网页

# 代码2

from selenium import webdriver

from selenium.webdriver.chrome.service import Service

driver_path = 'C:/chrome/chromedriver.exe'  # 指定驱动位置

service = Service(executable_path=driver_path)

driver = webdriver.Chrome()

driver.get("https://www.baidu.com")  # 打开网页

三、总结(这里是重点)

    1、从知道selenium到安装成功,我花费了一个多星期,每天想到新方法就测试一下,遇到了很多错误,大多数情况是错误提示:
    selenium.common.exceptions.NoSuchDriverException: Message: Unable to obtain driver for MicrosoftEdge using Selenium Manager.; For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors/driver_location
    2、即便到目前为止,我的电脑也没有安装成功,我一度怀疑是我的电脑系统有问题,但是我不愿意重装,因为电脑装了很多软件,重装太痛苦了。不排除是因为我装了很多软件,某个软件改动了电脑的注册表导致我的selenium一直安装失败,这个我没法去排除。
    那我怎么测试成功了呢,我在电脑上安装了虚拟机,在虚拟机测试成功了。所以,如果也是各种方法尝试了都不行,那 有可能是操作系统的原因。我本机电脑:Windows 11 专业版,虚拟机:Windows 10 家庭版
    3、另外我看有人说是打开了防火墙的原因,我测试了,防火墙打开或是关闭没有影响。
    4、谷歌浏览器的driver都是基于测试版的,就是我上面提供的网址去下载绿色版就可以实现,不用纠结本地电脑的浏览器版本问题,重点是path设置浏览器及浏览器驱动。
    5、代码运行正常并打开了浏览器,但是浏览器又迅速关闭的情况。一般是因为selenium的版本问题。试着更新一下selenium版本,我的是从4.16 改到 4.1.1就稳定不会关闭浏览器了。高版本降低版本,先pip uninstall selenium  卸载,再安装指定版本 pip install selenium==4.1.1
    [完]
  • 20
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值