如何实现网页验证码识别 ( 积分: 50 )

  • 主题发起人 主题发起人 zqssoft
  • 开始时间 开始时间
Z

zqssoft

Unregistered / Unconfirmed
GUEST, unregistred user!
1.如何通过delphi编程实现下面网页验证码的识别,并显示在Edit控件中:
http://www.iflytek.com/Bitmap.asp
2.如何截获当前输入法正在输入的汉字或字母,并显示在自己的Edit程序中:
(如,当前输入“张”,则自己程序中Edit中显示"张")
 
下面是一段VB的识别验证码代码,有谁能将其翻译为delphi的,谢谢。

Function getCode() As String
Dim strTem As String
BmpClear
strTem = BmpToCode(2, 1) & BmpToCode(12, 1) & BmpToCode(22, 1) & BmpToCode(32, 1)
getCode = strTem
End Function

'验证码识别
'** :

Function BmpClear()
Dim i As Long
Dim i1 As Long

For i = 0 To Picture1.ScaleWidth
For i1 = 0 To Picture1.ScaleHeight

If Picture1.Point(i, i1) = "&HC0C0C0" Then
Picture1.Line (i, i1)-(i + 1, i1 + 1), vbWhite ', BF

ElseIf Picture1.Point(i, i1) <> "&HFFFFFF" Then
Picture1.Line (i, i1)-(i + 1, i1 + 1), vbBlack ', BF
End If
Next
Next
End Function

Function BmpToCode(X As Long, Y As Long, Optional ByVal ErrCount As Long = 5) As Long
Dim x1 As Long
Dim y1 As Long
Dim i As Long
Dim Code As Long
Dim tErrCount As Long
Dim tLng As Long
Code = -1
For i = 0 To 9
tErrCount = 0

For x1 = 0 To 5
For y1 = 0 To 8
If Picture1.Point(X + x1, Y + y1) <> _
ModePic.Point(i * 6 + x1, y1) Then tErrCount = tErrCount + 1
Next
Next
A1:
If tErrCount <= tLng Then
Code = i
GoTo Out
Else
If tLng < ErrCount Then
tLng = tLng + 1
Debug.Print "tLng=" & CStr(tLng) & " | tErrCount=" & CStr(tErrCount)
GoTo A1
End If
End If
Next
Out:
BmpToCode = Code
End Function
 
你这个图片那么多干扰点,你贴的这代码没用的.
 
http://www.tomore.com/dispdocnew.php?id=43463

使用控件中的第19种样式即可识别你所说的验证码
 
1.
四位数字固定位置的识别 简称白痴验证码 不必降噪去点就可以识别 网络上可以找到代码
2.
找找键盘记录的代码 大富翁就有 去年学的时候觉得是宝 今年看起来是草 代码被我删除了 本来可以帮你找


目前 真正意义的识别控件是没有的 很多网上宣称的通用识别控件下载一看都是垃圾 当然 毕竟作者求财精神可嘉 人家不容易我就不指名评价人家的控件了 否则变成挡人财路撒~

我做过联众的:
http://shop.ourgame.com/inc/autoimage.asp
所以看到你上面的图片觉得很容易

去年写过一个软件 一边查QQ保护和QB一边扫号的 最近腾讯又变了 我看了一下 还是有办法识别 不过暂时没有时间写啦

验证码识别难度越高 自己创造的土办法越容易 哈哈 一点心得
 
风铃夜思雨兄:原来你的19种样式可以,但现在改5位了,请问怎么可以实现识别,谢谢。参看例图:http://www.iflytek.com/Bitmap.asp
 
风铃夜思雨兄:原来你的19种样式可以,但现在改5位了,请问怎么可以实现识别,谢谢。参看例图:http://www.iflytek.com/Bitmap.asp [:)]
 
望解决了的朋友共享一下:
QQ:29100489
szfity@163.com
 
后退
顶部