Python识别网站验证码的几种方式

1.云打码平台(已完结)

优势:现成的平台,只需要调用即可,成功率较高。
劣势:需要一点软妹币。

这是最简单的运用,国内常用的打码平台有:
云打码(http://www.yundama.com/)
打码兔(http://www.damatu1.com/)等等。

以云打码平台为例,说明如何调用平台来实现验证码的识别:

1.进入云打码平台,分别注册用户和开发者两个账号。
2.点击开发者登录,进入到开发者中心,点击开发者中心内的‘根据开发语言下载DEMO‘,首页是没有Python的,点击进去之后就能看到PythonHttp,在其中点击第10项下载即可。


3.下载成功后将得到一张实例图片和两个代码,其中2.x结尾的代表Python2使用的,3.x结尾为Python3使用的,我们使用的Python版本号为3.7,于是打开3.x结尾的文件。打开之后不用管封装好的类,查看下面的代码段,在相应的位置填入参数即可,其中result就是识别出来的结果。
username = '填入用户名'
# 密码
password = '填入用户密码'
# 软件ID,开发者分成必要参数。登录开发者后台【我的软件】获得!
appid = 填入软件号
# 软件密钥,开发者分成必要参数。登录开发者后台【我的软件】获得!
appkey = '填入软件密匙'
# 图片文件
filename = '填入图片位置'
# 验证码类型,# 例:1004表示4位字母数字,不同类型收费不同。请准确填写,否则影响识别率。在此查询所有类型 http://www.yundama.com/price.html
codetype = 1004
# 超时时间,秒
timeout = 20
# 检查
if (username == 'username'):print('请设置好相关参数再测试')
else:# 初始化yundama = YDMHttp(username, password, appid, appkey)# 登陆云打码uid = yundama.login()# print('uid: %s' % uid)# 查询余额balance = yundama.balance()# print('balance: %s' % balance)# 开始识别,图片路径,验证码类型ID,超时时间(秒),识别结果cid, result = yundama.decode(filename, codetype, timeout)print('cid: %s, result: %s' % (cid, result))

2.百度识图(未尝试)

优势:百度的开放平台,功能强大。
标题:安装使用比较复杂。

登录百度AI开发平台http://ai.baidu.com/tech/ocr/webimage,得到SDK文件安装使用。

3.利用Python库自己写(未尝试)

优势:自己写的,熟悉代码。
劣势:不保证识别成功率。

利用Python本身强大的库,自己编写程序。
放一个博主的优秀总结文链接:
https://blog.csdn.net/yanqianglifei/article/details/82884701
作者:致Great(如侵即删)

1.将二维码截图,导入PIL库,对图片进行锐化,二值化等处理。
2. 导入pytesseract库,对图像进行识别。

Python识别网站验证码的几种方式相关推荐

  1. python获取网页验证码_Python识别网站验证码

    http://drops.wooyun.org/tips/6313 Python识别网站验证码 Manning · 2015/05/28 10:57 0x00 识别涉及技术 验证码识别涉及很多方面的内 ...

  2. Python识别登录验证码

    Python识别登录验证码(附完整代码) [项目介绍] 网络迅速在人类生活中扎根,我们每天都会不可避免地接触大量网站和碎片化的信息,为了保护用户的账号安全和防止信息泄露,很多网站通行的方式是设置登录验 ...

  3. wafw00f--一款基于python识别网站WAF的工具

    渗透时候经常会被waf之类的拦截,这时候需要知道目标站点使用了什么防火墙,然后才能根据对应防火墙寻找绕过的姿势.wafw00f就是一款识别网站防火墙的工具. 文章目录 简介 原理 项目地址 命令参数 ...

  4. Python模拟登录,Python识别图形验证码实现自动登陆

    前言 利用Python识别图形验证码,selenium模块实现自动登陆.废话不多说. 让我们愉快地开始吧~ 开发工具 Python版本: 3.6.4 相关模块: re: numpy模块: pytess ...

  5. python使用什么作为转义字符-详解用Python处理HTML转义字符的5种方式

    写爬虫是一个发送请求,提取数据,清洗数据,存储数据的过程.在这个过程中,不同的数据源返回的数据格式各不相同,有 JSON 格式,有 XML 文档,不过大部分还是 HTML 文档,HTML 经常会混杂有 ...

  6. Python调用API接口的几种方式

    本文主要介绍python中调用API的几种方式,下面是python中会用到的库. 1.urllib2 import urllib2, urllib github_url = 'https://api. ...

  7. 用Python读取CSV文件的5种方式

    典型的数据集stocks.csv: 一个股票的数据集,其实就是常见的表格数据.有股票代码,价格,日期,时间,价格变动和成交量.这个数据集其实就是一个表格数据,有自己的头部和身体. 第一招:简单的读取 ...

  8. 网站盈利的10种方式

    网站盈利的10种方式 #原创 申请达人,去除赞助商链接 如果你有自己的网站,而且已经有了不少的流量,你肯定会开始考虑如何通过这个网站来挣一些钱. 在这篇文章中,我会向大家介绍网站最常见的10种盈利方式 ...

  9. Python实现微信支付(三种方式)

    Python实现微信支付(三种方式) 微信.支付宝二维码聚合SDK下载 点我下载 关注公众号"轻松学编程"了解更多. 如果需要python SDk源码,可以加我微信[1257309 ...

最新文章

  1. 浅谈Java throw, throws, try catch异常处理
  2. [iOS]提交App报错ERROR ITMS -90207
  3. Investigating SQL Server 2008 Wait Events with XEVENTS
  4. 【FFmpeg】使用 FFmpeg 处理音视频格式转换流程 ( 解复用 | 解码 | 帧处理 | 编码 | 复用 )
  5. 漫画:什么是JVM的垃圾回收?
  6. 1.无重复字符的最长子串
  7. css中auto啥意思,CSS中各种auto值的作用总结
  8. Globle Get 多线程下载系统
  9. 9个offer,12家公司,35场面试,从微软到谷歌,我的求职之路!
  10. PC浏览器调试手机浏览器工具
  11. BT服务器的搭建(tracker-P2P服务器架设)(转)
  12. 第四章 WEB表单(二)
  13. jenkins下载插件失败
  14. Oracle数据库学习--2个不错的网站
  15. 优必选悉尼 AI 研究院王超岳:基于生成对抗网络的图像编辑方法
  16. 将TTF格式文字转换成eot格式
  17. 1. 树莓派点灯学习(UI界面控制)
  18. 大象装企营销:16个月,血亏300万,投资人撤资,公司倒闭
  19. 求5个整数的平均值用c语言,编写求一组整数的和与平均值的程序
  20. mybatis和ibatis的区别

热门文章

  1. 【JAVA】JIT和AOT
  2. pygame游戏使用不分割大图像做背景的方法
  3. VB 2010 (11)创建类
  4. UART、RS232、RS485、IIC的通信原理介绍
  5. 顺序栈的基本操作 C++
  6. 《C语言程序设计-现代方法》 笔记
  7. python爬虫逆向|某手网页滑块逆向分析
  8. 从源头看Dust3d | (十)meshsplitter:网格切割
  9. Python代码整洁之道:使用异常来代替无意义的返回值
  10. Arma3自动重启服务器,arma3管理员服务器重启 | 手游网游页游攻略大全