奋斗了一晚上终于搞定了新浪微博的验证码识别
本帖最后由 仙乃日 于 2012-3-5 09:09 编辑奋斗了一晚上终于搞定了新浪微博的验证码识别!新浪微博的验证码采用了数字加字母作为验证码,并且个别的粘连,有轻微的干扰线(这个貌似没啥用处),最难的地方就是字体有好几种并且字号也不一样,好在只有几个数字和字母. 那就分享分享吧 纯支持下楼主 - -...呵呵。恭喜下。努力换来成果 本帖最后由 仙乃日 于 2012-3-8 13:42 编辑
新浪微博的验证码是无法直接下载的,自己采用了一个比较笨的方法来解决。#AutoIt3Wrapper_UseUpx=n
#include <IE.au3>
#include <Clipboard.au3>
#include <ScreenCapture.au3>
$url = "http://service.weibo.com/reg/regindex.php?appsrc=39qqvX&backurl=&diy="
GetPic($url)
Func GetPic($opicURL)
$oIE = _IECreate($opicURL, 0, 1, 1)
$i = 1
If FileExists(@TempDir & "\1") = 0 Then
DirCreate(@TempDir & "\1")
Else
DirRemove(@TempDir & "\1", 1)
DirCreate(@TempDir & "\1")
EndIf
Do
Sleep(600)
$Ele = _IEGetObjById($oIE, "check_img")
$oPic = $oIE.Document.body.createControlRange()
$oPic.Add($Ele)
$oPic.Select()
$oPic.execCommand("Copy");复制到剪贴板
_ClipBoard_Open(0);从剪切板获取图片数据
$iVPics = _ClipBoard_GetDataEx($CF_BITMAP)
_ClipBoard_Close()
$pic_name = "VPics" & $i & ".bmp"
_ScreenCapture_SaveImage(@TempDir & "\1\" & $pic_name, $iVPics)
$Ele = _IEGetObjById($oIE, "refreshCode") ;
$Ele.click
$i += 1
Until $i = 500
_IELoadWait($oIE)
EndFunc ;==>GetPic
楼主精神可嘉,恭喜成功 = =万恶的验证码 恭喜下。努力换来成果{:face (411):} 分享一下啊 。。。。。。。。。 不错,喜欢 。。。。 怎么识别? 怎么识别? 用OCR来识别验证码字符的吗?楼主什么时候分享源码让我等学习学习? 同求 源码.. 小弟听说验证码要出什么政策啦,好像说是有歧视性,(对眼睛不怎么好使的人)
好像是要弄个什么语音的{:face (396):}