用Python模拟识别图片验证码并发送手机验证码_python训练识别图片验证码

395 阅读6分钟

3、执行部分

在这里插入图片描述

3、选择例子

选取一个网站作为例子,例如这个网站,它的验证形式为图片验证码验证,且图片比较复杂,对打码平台的要求较高:

我们打开开发者模式,切换到network窗口,手动输入手机号码,并输入图片验证码的内容,点击发送,进行抓包分析(框出或者标识部分都是重要部分,由于部分字段涉及个人及网站隐私安全,已做马赛克处理):

上面就是我们模拟发送短信验证码抓到的包,这个表单数据(form data)还是相对简单,除了phone(输入的手机号)和Verify(输入的图片验证码)是变化的,其他都是固定格式。有些相对复杂的,会有其他的加密方式,如md5对手机号加某些信息加密后传输,这些往往需要我们进行js解析(此处不过多赘述,请自行了解)。现在我们要做的就是识别验证码后将数据传入并模拟发送,话不多说,我们开始。

4、代理部分

什么代理:

 代理服务器(Proxy Server)的功能是代理网络用户去取得网络信息。形象地说,它是网络信息的中转站,是个人网络和Internet服务商之间的中间代理机构,负责转发合法的网络信息,对转发进行控制和登记。



代理服务器作为连接Internet与Intranet的桥梁,在实际应用中发挥着极其重要的作用,它可用于多个目的,最基本的功能是连接,此外还包括安全性、缓存、内容过滤、访问控制管理等功能。更重要的是,代理服务器是Internet链路级网关所提供的一种重要的安全功能,它的工作主要在开放系统互联(OSI)模型的对话层。

(更多详情,如专享ip、隧道ip这些请自行了解)

   我们这里做代理ip,主要是为了安全起见,由于我们的频繁访问,网站管理者发现异常后极有可能将我们的ip封禁,所以我们需要使用代理ip,通过代理ip作为桥梁去访问。


  市面上有很多的代理ip提供,有免费的、收费的,当然,免费的代理ip体验上是很差的,很多都不能用。我们自己可以去购买一些网站的套餐使用会流畅很多。至于哪家网站的代理ip好用,可以自行查找相关信息。我这里使用的是 芝麻HTTP。

  为了使代码看起来更简单,我使用单个ip进行演示,代码如下:

#proxy.pyproxy = '113.128.28.102:4231'proxies = { 'http':'http://'+proxy}

在这里插入图片描述

5、识别部分

识别验证码我们仍然使用的是第三方的网站的代码,python有Tesseract-OCR模块供识别图片,但识别率低。

市面上很多打码平台,识别率最好的是超级鹰,但收费较贵。其他的还有 图鉴、斐斐打码 之类的平台,收费较为亲民,但识别率不是很高。

对于我们这个例子,验证码较为复杂,一般的打码平台识别不出,所以我们选择使用超级鹰。

对于这类的打码平台,我们一般是注册充值后,复制他们提供的demo代码,将账号信息填入使用。每次使用需要下载图片验证码到本地,由于验证码具有时效性,每次访问都会变化,我们为了保证两次访问一致,主要保证两次访问的cookies一致。

在这里插入图片描述

代码如下:

####Python学习交流群:906715085####
!/usr/bin/env python# coding:utf-8
#这个代码是超级鹰提供的demo的基础上,本人为了方便调用自行改造后的代码
import osfrom proxy
 import proxiesimport requestsfrom hashlib
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!



### 一、Python所有方向的学习路线



Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。



![](https://p3-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/8668618f4b9a44028b108392a0ca94fd~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg55So5oi3NTc5MjMwMTY3MDI=:q75.awebp?rk3s=f64ab15b&x-expires=1773836233&x-signature=Doe%2B84ux1yCVxI%2BvaHTnaFSUfsI%3D)



### 二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。



![](https://p3-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/06024e79d4ca4b6cbaf5da95f194fed2~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg55So5oi3NTc5MjMwMTY3MDI=:q75.awebp?rk3s=f64ab15b&x-expires=1773836233&x-signature=rte2HJ52FJTuBNh%2BK4dJFkMzwdg%3D)



### 三、全套PDF电子书



书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。

![](https://p3-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/2a5f092e537a401aa3e8a6586b2fe83b~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg55So5oi3NTc5MjMwMTY3MDI=:q75.awebp?rk3s=f64ab15b&x-expires=1773836233&x-signature=HkO5Ijhs7W7q%2Bk9duRdSZZcfb50%3D)



### 四、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。



![](https://p3-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/96b639de75bc4d75a3c740dfb02dd6e2~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg55So5oi3NTc5MjMwMTY3MDI=:q75.awebp?rk3s=f64ab15b&x-expires=1773836233&x-signature=rUN7GxRbFazsPHln6frku3bwD7Q%3D)



### 五、实战案例



光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。



![](https://p3-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/d70a338bb9e34914b0ca5878738c63af~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg55So5oi3NTc5MjMwMTY3MDI=:q75.awebp?rk3s=f64ab15b&x-expires=1773836233&x-signature=y%2F2D1Z6tqo90DXttttEjhCaF%2FK0%3D)



### 六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。



![](https://p3-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/da93e9e4220e48d9ba095828934a546b~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg55So5oi3NTc5MjMwMTY3MDI=:q75.awebp?rk3s=f64ab15b&x-expires=1773836233&x-signature=dVfn48mitjHq4A4qX2Ge%2FLGoq2E%3D)  

![](https://p3-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/d1cca1e67a964c94b4296f9d2ec3dae8~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg55So5oi3NTc5MjMwMTY3MDI=:q75.awebp?rk3s=f64ab15b&x-expires=1773836233&x-signature=nz1seu9J2UsPW%2Fvi90bNdWgUyDA%3D)



**了解详情:https://docs.qq.com/doc/DSnl3ZGlhT1RDaVhV**