用python实现自动登录操作(含验证码识别)

本文的创作缘由在于此前撰写了一个用于研究自动打卡的脚本。众多朋友在使用过程中常常会遇到验证码的问题,鉴于此,笔者对存有数字化验证码内容的情况进行了尝试性探索。
原始文章见:用python实现自动签到脚本

1. 应用场景

如图,我们登录内容包含三部分信息
在这里插入图片描述

2. 整体思路

安装python的selenium包,文本框填写,通过xpath定位到账户、密码位置,填写自己的基础信息。对于验证码,我们可以看看该元素的特征,如图:
在这里插入图片描述
可以看到,每次二维码加载的时候,是调用了某个网址的链接,取到的是一张图片。因此,我在处理过程中的思路是,将改地址的图片拿到,通过OCR进行解析识别,得到的结果输入到验证码框中,即可实现。

3. 验证码识别思路

3.1 调用普通python包实现

参考链接:传送门,我没有采用该方式,理由是,安装环境真特么的麻烦。

3.2 使用大模型进行OCR识别

本文借助百度的千帆大模型平台,普通用户有1000次/月的额度,对于小型测试娱乐完全够用。地址:https://console.bce.baidu.com/,用户自行注册,在此声明,个人测试过,非软广!非软广!非软广!

在这里插入图片描述
首先自行领取资源,如图:
在这里插入图片描述

自行创建应用,如图:
在这里插入图片描述
在线API调试,如图:
在这里插入图片描述
如果可以得到相应结果,那么就可以download代码使用啦。
拿到验证码的代码如下:

response = requests.request("POST", url, headers=headers, data=payload)
verification_code = json.loads(response.text).get("words_result")[0].get("words")

4. 总结

验证码识别有多种方式,离线方式可以采用python包版本进行配置,对于在线验证的方式,尤其是图片式验证码,上述方式可以完美解决,效果还不错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

l8947943

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值