利用云识别过简单验证码实例(源代码分享)

Posted 3分钟学堂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用云识别过简单验证码实例(源代码分享)相关的知识,希望对你有一定的参考价值。

在之前已经分享过一篇文章《》,利用这个源码我们做一个过简单的验证码实例。


先来看看验证码的形式:



对于这个验证码,我们分析一下,


  1. 口令文字有5个

  2. 验证文字有10个

  3. 文字字形工整识别准确率高

  4. 验证文字排版整齐有规律2行5列,易于根据序号获取坐标。


我们说一下这个验证码的原理

  1. 把口令文字和验证文字截图上传给百度云识别

  2. 识别出内容15个字

  3. 前5个字是口令文字,后10个字是验证文字

  4. 把10个验证文字对应的坐标用抓抓工具获取到,存入数组里面,对应编号分别是1-10

  5. 提取口令文字的第一个字,在10个验证文字里面查找,获取字所在位置(文字的序号),然后找到数组对应编号的坐标。最后点击坐标,完成第一个字的验证。

  6. 以此类推完成剩下4个字的验证,最终完成整个验证码。


代码中的一些参数要根据你自己实际情况修改,不要无脑套用,本期文章主要是给大家提供一个免费的“打码”方式。


源代码如下:


Dim t=TickCount()

Dim 路径="/sdcard/pictures/baidu.png"

SnapShot(路径,57,868,667,1182)

Dim api="xxxxxxx" //你自己的api

Dim Secret="xxxxxxxxx" //你自己的Secret

Dim token=url.get("https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id="&api&"&client_secret="&secret)

TracePrint token

dim mytoken=Encode.JsonToTable(token)

TracePrint mytoken["access_token"]

Import "shanhai.lua"

Dim base64=ShanHai.ReadFileBase(路径)

Dim 图片=ShanHai.CharToUrl(base64)

Dim post内容="access_token="&mytoken["access_token"]&"&Content-Type=application/x-www-form-urlencoded&image="&图片&"&detect_direction=true"

Dim myjson=url.post("https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic",post内容)

TracePrint myjson

myjson = Encode.JsonToTable(myjson)

TracePrint UBOUND(myjson["words_result"])+1&"行文字"

Dim ret

For i = 1 To UBOUND(myjson["words_result"])+1

    ret=ret&myjson["words_result"][i]["words"]

Next

TracePrint ret

TracePrint TickCount()-t

traceprint ShanHai.type(ret)

TracePrint utf8.len(ret)

Dim 口令文字=utf8.mid(ret,1,5)

TracePrint 口令文字

Dim 验证文字=utf8.mid(ret,6,10)

Dim x,y

Dim arr=array({90,1034},{224,1031},{355,1031},{496,1035},{629,1035},{91,1139},{225,1141},{359,1138},{490,1135},{628,1136})

//每个{}内的是坐标,一共10个坐标

For i=1 to 5

    x = UTF8.StrGetAt(口令文字, i)

    y = UTF8.InStr(1, 验证文字, x)

    TracePrint arr[y][1],arr[y][2] //使用的时候用tap

    Delay 1000

Next



以上是关于利用云识别过简单验证码实例(源代码分享)的主要内容,如果未能解决你的问题,请参考以下文章

好课分享: CTO 零基础深度学习爬虫验证码识别 百度云

超简单的PHP验证码识别

Java实现超简单验证码识别

(源码分享)利用Python识别提取图像文字(中文英文都可以)

Python爬虫之网站验证码识别

#私藏项目实操分享#Python模拟登录,selenium模块,Python识别图形验证码实现自动登录