python反爬虫应对之借助平台超级鹰突破网页验证码识别

在爬虫过程中,有些网页需要登录才能获取里面的数据,在大部分的登录过程中,都会需要一个叫验证码识别,目前的网页有各种各样的验证码,有数字加字母的组合,有物品识别等等

在代码进行网页爬取过程中,如果由人为判断验证码进行,则失去了网络爬虫的意义

网站设置验证码的作用之一就是一种反爬虫措施,但是这种措施目前仍然可以用一些技术手段进行自动识别,帮助爬虫工作者顺利突破验证码

网络上进行验证码识别的平台有很多,如云打码、超级鹰,小编用的是超级鹰,虽然它需要充值,不过识别验证码的效果还是很不错的

超级鹰:http://www.chaojiying.com/about.html

进入网页之后,进行注册登录,用户必须有题分才能享受到平台的服务,大家可以充值1块钱或者绑定微信,都会获得1000个题分,识别一次10--70题分不等,对小编来说,1块钱能用好久

充值后在用户中心--软件ID--生成一个软件ID

 其中生成的ID是后续要用的,KEY用不到

开发文档中,点击python,点击右侧下载按钮,将下载的文件解压缩,里面包含一个py文件,就是超级鹰破解验证码的代码,将它放入pycharm中就可以运行,下面具体讲解操作

我们看代码最后面

if __name__ == '__main__':
	chaojiying = Chaojiying_Client('超级鹰用户名', '密码', '软件ID')	#用户中心>>软件ID 生成一个替换 96001
	im = open('需要识别图片的路径', 'rb').read()													#本地图片文件路径 来替换 a.jpg 有时WIN系统须要//
	print (chaojiying.PostPic(im, 验证码类型))										#1902 验证码类型  官方网站>>价格体系 3.4+版 print 后要加()

其中超级鹰用户名、密码、软件ID、图片路径、验证码类型需要自己更改,其他的代码不需要管他,其中验证码类型参考http://www.chaojiying.com/price.html

注意  下载好的最后一行代码中的print少括号 需要自己加上

运行结束后,返回一个字典

 其中识别好的值,在键为pic_str中

在实际的爬虫过程中,要么用resquests抓取验证码的src路径,将其下载后传入超级鹰的图片路径,要么用seleium采取截图的方式,将浏览器的验证码图片截取下来,传入程序进行识别。当然验证码是变化的,建议使用seleium截图的方式进行,这就需要掌握seleium的操作以及截图PIL这个第三方库的基本操作

以上将识别出的值,在传入网页中需要填写的文本位置,就可以通过网页验证码这一关了

下面附上代码工作的视频,提前下载好了两个验证码进行试验

QQ录屏20210714194308

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值