联众打码(打码软件DL)

上节课,我们用pyessrect来识别简单的验证码图片,但是根据上节课的效果来看,pyessrect的效果好像不是很好。如果遇到一些复杂的验证码,可能就要停吃了

上节课,我们用pyessrect来识别简单的验证码图片,但是根据上节课的效果来看,pyessrect的效果好像不是很好。如果遇到一些复杂的验证码,可能就要停吃了。但是我们在爬虫开发中会遇到的验证码可以说是五花八门,几乎都是要打出来的。

试想一下,如果爬虫遇到Pyesseract无法识别的验证码,该怎么办?爬行动物不写字吗?我觉得老板不愿意做,所以这节课就给大家推荐另一种验证码识别方式,那就是——第三方打码平台。

俗话说,三个臭皮匠顶个诸葛亮。当我们在实际开发中遇到无法解决的问题时,一定不能坐以待毙,好好利用搜索引擎。编程行业发展了这么多年,可能你遇到的问题早就被别人解决了,解决的办法也已经分享了。

本课的学习目标:

熟练使用第三方编码平台识别验证码。

1. 常见的第三方打码平台

常用的编码平台有:超鹰、云编码、编码兔、联众编码、超人编码、飞飞编码、91编码等。读者可以根据自己的需求进行选择。

2. 打码平台进行打码步骤

使用第三方平台编码通常需要四个步骤。这里我们使用Super Eagle编码平台进行演示。

首先选择一个打码平台进行注册

由于平台不同,注册流程也不一样,这里就不截图演示了。注册后,如果没有免费适用的功能,我们需要充值才能正确使用界面。每个平台都会有自己的开发文档,我们可以根据开发文档中显示的栏目重写,直接使用。

需要进行充值

如果只是简单的测试,可以少量充值。因为是第三方平台,不能保证网站长期可用。充值需谨慎。

获取网站的程序ID

充值后我们会得到一个程序ID,把这个ID放入界面,方便第三方平台查看。

上传验证码,返回调用结果。3. 打码平台对接例子

接下来,我们用一个简单的例子来详细演示以上步骤:

在这里,我们随机选取了一个编码平台的接口例子来说明。

至于如何在编码平台上注册和查找接口文档,由于编码平台的不稳定性,这里不做推荐。读者可以选择自己的平台注册使用。在确定编码平台可靠性的前提下,充值。谨防被骗!

接下来我们通过打码平台验证以下验证码,验证码图片如下:

联众打码(打码软件DL)插图

代码如下:

#!/usr/bin/env python # coding:utf-8 import requests from hash lib import MD5 # Client class class My _ Client(object):# initialize def _ _ init _ _(self,username,password,soft _ id):self . username = username self . password = password . encode(& # 39;utf8 & # 39)self.password = md5(密码)。hex digest()self . soft _ id = soft _ id self . base _ params = { & # 39;用户& # 39;:self.username,& # 39;pass2 & # 39:self.password,& # 39;软银& # 39;:self.soft_id,} self.headers = { & # 39连接& # 39;: '保持活力& # 39;, '用户代理& # 39;: 'Mozilla/4.0(兼容;MSIE 8.0Windows NT 5.1三叉戟/4.0)& # 39;,} #上传图片def post pic (self,im,codetype):& # 34;""Im:图片字节码类型:标题类型& # 34;""params = { & # 39代码类型& # 39;:codetype,} params . update(self . base _ params)files = { & # 39;用户文件& # 39;: ('ccc.jpg & # 39,im)} r = requests . post(& # 39;http://upload.chaojiying.net/Upload/Processing.php',data = params,files = files,headers = self . headers)return r . JSON()# error feedback def reporter(self,im _ id):& # 34;""Im_id:错误标题的图片& # 34""params = { & # 39id & # 39:im_id,} params . update(self . base _ params)r = requests . post(& # 39;http://upload.chaojiying.net/Upload/ReportError.php',data=params,headers=self.headers)返回r . JSON()if _ _ name _ _ = = & # 39;_ _ main _ _ & # 39:chaoji ying = My _ Client(& # 39;XXX & # 39, 'XXX & # 39, 'XXX & # 39)im = open(& # 39;a.jpg & # 39, 'rb & # 39).read()print(chaoji ying . postpic(im,XXX))上面的代码,我们一共三个方法,分别是初始化、上传图片和错误反馈。初始化主要是初始化一些基本信息,可以在编码平台注册地获取。此外,编码平台还会提供一个由编码平台提供的识别码SoftId。初始化成功后,我们上传验证码,最后打印出结果。可以看到结果是7261,和验证码里的文字一致。

运行结果如下:

联众打码(打码软件DL)插图(1)

4. 小结

由于编码平台良莠不齐,读者在选择编码平台时需要选择一些知名企业。另外,在使用编码平台时,需要根据不同平台规定的接口进行调用,不同编码平台的规范也不一样。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。

作者:美站资讯,如若转载,请注明出处:https://www.meizw.com/n/197395.html

发表回复

登录后才能评论