51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

python搭配selenium实现滑动验证码自动化

本文介绍如何实现滑块验证界面自动化,一般滑块验证是对数据的一层拦截,我们需要获取数据就得操作滑块验证,这里使用python搭配selenium实现滑动验证码自动化。

代码 {#代码}

https://gitee.com/xiaojinggege/job-spider

环境 {#环境}

下载代码,工具在tools文件夹中。

| 文件 | 用途 | |:---------------------------:|:---------------------------------------------------------------------------------------------:| | python-3.9.0-amd64.exe | python安装包 | | google-chrome.exe | chrome浏览器安装包,此处为111版本 | | chromedriver.exe | 对应chrome111版本的驱动,如果你的chrome浏览器版本不是111,请去下载对应版本的driver,地址在文末,将此文件放到python安装目录中,和python.exe同级 | | WinHex_20.8_SR-0_Single.exe | 16进制编辑器 |

运行 {#运行}

下载代码,使用pycharm打开,直接运行main.py,可以根据自己的需求定制url,或者其他参数。

禁用chrome自动升级 {#禁用chrome自动升级}

禁用谷歌Chrome浏览器自动升级,因为chrome升级到最新的话,这里的111版本的chromedriver就不兼容了,除非自行将chromedriver替换成当前Chrome浏览器升级后对应的版本,需要自己去下载,我这里直接就禁用了升级。

右键单击【计算机】------【管理】------【计算机管理本地】------【系统工具】------【任务计划程序】------【任务计划程序库】------这里找到两个和Google自动更新相关的任务计划【GoogleUpdateTaskMachineCore】与【GoogleUpdateTaskMachineUA】,把这两个选项禁用。

这里只有两个关于Google的选项,有的是三个,不管几个都禁用就可以了。

在【服务和应用程序】------【服务】,这里找到了两个和Google更新相关的服务【Google更新服务(gupdate)】、【Google更新服务(gupdatem)】,右键------选择属性------启动类型禁用即可。

Chrome更新是利用update里的升级程序来升级的,所以可以删除里面的文件。

但是如果直接删除Chrome又会自动生成。所以可以考虑切断这一步,只要Chrome没法在Update文件夹里生成更新程序,那么Chrome就无法升级了。

所以首先清空Update文件夹并设置权限,让Chrome没有权限修改这个文件夹。

删除C:\Program Files (x86)\Google\Update目录中的所有内容

然后右键Update文件夹,打开属性,点击"安全"选项卡,System完全控制权设置为拒绝。System是最高权限,设置完了之后Chrome就没有权限动这个文件了。

点击高级,选择编辑权限

点击禁用继承 ,将所有允许,都删除,只剩拒绝,然后确定

再次点击 Update 文件夹 弹出 你当前无权访问该文件夹,证明我们已经配置成功。(此时谷歌浏览器自动更新将没有权限访问更新文件夹)

Chrome浏览器自动更新失败右上角会有弹窗提示

关闭弹窗的话需要右键chrome应用程序,选择属性,在目标选项的末尾输入

--disable-background-networking

然后应用,确定,重启即可。

实在觉得麻烦的话,直接去下载最新版本的 chromedriver.exe

本人写作时Google Chrome最新版本为113,对应版本chromedriver.exe也放在里面了

Chrome相关 {#chrome相关}

Google Chrome 谷歌浏览器所有历史版本(含95内核以前的版本)

Chrome浏览器最新离线版下载

Chrome Driver

参考 {#参考}

selenium---滑动框验证码破解

python+selenium爬虫之解决51job滑块验证失败

其他说明 {#其他说明}

由于不同网站的滑块验证可能具有差异,因此具体的解决方案需要结合实际情况进行修改和优化。

由于防爬手段的升级,此种方式可能不是长久之计。

此外,在使用任何自动化工具进行数据爬取和处理时,一定要遵守相关法律法规和网站的使用协议。

赞(0)
未经允许不得转载:工具盒子 » python搭配selenium实现滑动验证码自动化