Python 建立一个模型来识别验证码成功率

1、需要建3个文件夹目录

2、需要建立模型库


完整代码下载  Python 建立一个模型来识别验证码成功率 ,请点击下载。

#!C:/Python27
#coding=utf-8

"""
    1、截屏,获取验证码图片;
    2、裁剪验证码为4个小图片;
    3、把4张图片放大为255*255像素图
    4、拿每块小图片去模型目录找相似的图片*4次;
    5、组装成字符串--->4位验证码
"""
import os ,sys 
import fnmatch
import re,time
import urllib, random
import pytesseract
from pytesser import *
from PIL import Image,ImageDraw

def GetVerficode(): #下载验证码图片

    j = 1000
    
    for i in range(1,2):  

        url = 'https://www.5wby.com/xxx/imgcode?a=0.7860542547321294'  

        print "download", i  

        file("./code/%d.jpg" % j, "wb").write(urllib.urlopen(url).read())

        j += 1
        
    
def CutCrop():#分隔验证图片

    """global data 全局变量在整个函数中有效"""
    ImgPath = (".//code//")
    
    j = 1000  

    for f in os.listdir(ImgPath):
    
        if f.endswith(".jpg"):

            print f

            img = Image.open(ImgPath+f).convert('L')

            print img.size

            w, h = img.size

            #rowheight = h // rownum
            #colwidth = w // colnum
            #imgry.show()

            for i in range(4):                

                x = 10 + i*24  #验证码的x,y坐标 10+i*24 y=6 (x-4, y,x+6, y+14)

                y = 8  

                img.crop((x-4, y,x+8, y+14)).save("font/%d.bmp" % j)  

                print "j=",j  

                j += 1

def fixed_size():
    
    """按照固定尺寸放大处理4图片"""
  
                   
"""对比图片方法开始"""
def getGray(image_file):
  
 

'''
"""对比图片方法结束"""

def  FindImg():
  ---------------------------------------********--------- 完整代码下载地址
 
"""下载图片"""
GetVerficode()
"""裁剪图片"""
CutCrop()
"""放大图片"""
fixed_size()
"""对比图片"""
FindImg()



完整代码下载  Python 建立一个模型来识别验证码成功率 ,请点击下载。


3、控制台日志

Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:53:40) [MSC v.1500 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> 
============== RESTART: E:\pythonScript\Model\GetCodeRuslat.py ==============
download 1
1000.jpg
(96, 30)
j= 1000
j= 1001
j= 1002
j= 1003
1000.bmp

按固定尺寸放大*4张图片,处理已完成
1001.bmp

按固定尺寸放大*4张图片,处理已完成
1002.bmp

按固定尺寸放大*4张图片,处理已完成
1003.bmp

按固定尺寸放大*4张图片,处理已完成

.\BigImg\10000.bmp 

.\result\2\2.bmp 相似度 37
.\result\3\3.bmp 相似度 38
.\result\4\4.bmp 相似度 42
.\result\5\5.bmp 相似度 37
.\result\6\6.bmp 相似度 47
.\result\7\7.bmp 相似度 62
.\result\8\8.bmp 相似度 48
.\result\9\9.bmp 相似度 43
.\result\a\a.bmp 相似度 56
.\result\b\b.bmp 相似度 52
.\result\c\c.bmp 相似度 67
.\result\d\d.bmp 相似度 50
.\result\e\e.bmp 相似度 54
.\result\f\f.bmp 相似度 84
.\result\g\g.bmp 相似度 55
.\result\h\h.bmp 相似度 50
.\result\i\i.bmp 相似度 87
.\result\j\j.bmp 相似度 67
.\result\k\k.bmp 相似度 57
.\result\m\m.bmp 相似度 55
.\result\n\n.bmp 相似度 54
.\result\p\p.bmp 相似度 55
.\result\q\q.bmp 相似度 53
.\result\r\r.bmp 相似度 90
.\result\s\s.bmp 相似度 65
.\result\t\t.bmp 相似度 69
.\result\u\u.bmp 相似度 52
.\result\v\v.bmp 相似度 68
.\result\w\w.bmp 相似度 54
.\result\x\x.bmp 相似度 50
.\result\y\y.bmp 相似度 56
.\result\z\z.bmp 相似度 72

各图片的相似度及图片路径:
{'62': '.\\result\\7\\7.bmp', '65': '.\\result\\s\\s.bmp', '67': '.\\result\\c\\c.bmp', '68': '.\\result\\v\\v.bmp', '69': '.\\result\\t\\t.bmp', '87': '.\\result\\i\\i.bmp', '84': '.\\result\\f\\f.bmp', '48': '.\\result\\8\\8.bmp', '47': '.\\result\\6\\6.bmp', '42': '.\\result\\4\\4.bmp', '43': '.\\result\\9\\9.bmp', '72': '.\\result\\z\\z.bmp', '90': '.\\result\\r\\r.bmp', '38': '.\\result\\3\\3.bmp', '55': '.\\result\\g\\g.bmp', '54': '.\\result\\e\\e.bmp', '57': '.\\result\\k\\k.bmp', '56': '.\\result\\a\\a.bmp', '37': '.\\result\\2\\2.bmp', '50': '.\\result\\d\\d.bmp', '53': '.\\result\\q\\q.bmp', '52': '.\\result\\b\\b.bmp'} 


所有相似度的百分值集合:
[37, 38, 42, 37, 47, 62, 48, 43, 56, 52, 67, 50, 54, 84, 55, 50, 87, 67, 57, 55, 54, 55, 53, 90, 65, 69, 52, 68, 54, 50, 56, 72] 


.\BigImg\10001.bmp 

.\result\2\2.bmp 相似度 58
.\result\3\3.bmp 相似度 65
.\result\4\4.bmp 相似度 73
.\result\5\5.bmp 相似度 64
.\result\6\6.bmp 相似度 70
.\result\7\7.bmp 相似度 51
.\result\8\8.bmp 相似度 71
.\result\9\9.bmp 相似度 62
.\result\a\a.bmp 相似度 69
.\result\b\b.bmp 相似度 75
.\result\c\c.bmp 相似度 58
.\result\d\d.bmp 相似度 95
.\result\e\e.bmp 相似度 75
.\result\f\f.bmp 相似度 51
.\result\g\g.bmp 相似度 88
.\result\h\h.bmp 相似度 77
.\result\i\i.bmp 相似度 58
.\result\j\j.bmp 相似度 60
.\result\k\k.bmp 相似度 58
.\result\m\m.bmp 相似度 80
.\result\n\n.bmp 相似度 81
.\result\p\p.bmp 相似度 78
.\result\q\q.bmp 相似度 88
.\result\r\r.bmp 相似度 53
.\result\s\s.bmp 相似度 62
.\result\t\t.bmp 相似度 54
.\result\u\u.bmp 相似度 85
.\result\v\v.bmp 相似度 57
.\result\w\w.bmp 相似度 63
.\result\x\x.bmp 相似度 51
.\result\y\y.bmp 相似度 61
.\result\z\z.bmp 相似度 45

各图片的相似度及图片路径:
{'60': '.\\result\\j\\j.bmp', '61': '.\\result\\y\\y.bmp', '88': '.\\result\\g\\g.bmp', '63': '.\\result\\w\\w.bmp', '64': '.\\result\\5\\5.bmp', '65': '.\\result\\3\\3.bmp', '69': '.\\result\\a\\a.bmp', '80': '.\\result\\m\\m.bmp', '81': '.\\result\\n\\n.bmp', '85': '.\\result\\u\\u.bmp', '45': '.\\result\\z\\z.bmp', '77': '.\\result\\h\\h.bmp', '75': '.\\result\\b\\b.bmp', '73': '.\\result\\4\\4.bmp', '71': '.\\result\\8\\8.bmp', '70': '.\\result\\6\\6.bmp', '95': '.\\result\\d\\d.bmp', '78': '.\\result\\p\\p.bmp', '58': '.\\result\\2\\2.bmp', '54': '.\\result\\t\\t.bmp', '57': '.\\result\\v\\v.bmp', '51': '.\\result\\7\\7.bmp', '62': '.\\result\\9\\9.bmp', '53': '.\\result\\r\\r.bmp'} 


所有相似度的百分值集合:
[58, 65, 73, 64, 70, 51, 71, 62, 69, 75, 58, 95, 75, 51, 88, 77, 58, 60, 58, 80, 81, 78, 88, 53, 62, 54, 85, 57, 63, 51, 61, 45] 


.\BigImg\10002.bmp 

.\result\2\2.bmp 相似度 49
.\result\3\3.bmp 相似度 52
.\result\4\4.bmp 相似度 54
.\result\5\5.bmp 相似度 51
.\result\6\6.bmp 相似度 49
.\result\7\7.bmp 相似度 66
.\result\8\8.bmp 相似度 56
.\result\9\9.bmp 相似度 49
.\result\a\a.bmp 相似度 80
.\result\b\b.bmp 相似度 48
.\result\c\c.bmp 相似度 57
.\result\d\d.bmp 相似度 56
.\result\e\e.bmp 相似度 62
.\result\f\f.bmp 相似度 66
.\result\g\g.bmp 相似度 61
.\result\h\h.bmp 相似度 50
.\result\i\i.bmp 相似度 71
.\result\j\j.bmp 相似度 59
.\result\k\k.bmp 相似度 49
.\result\m\m.bmp 相似度 55
.\result\n\n.bmp 相似度 54
.\result\p\p.bmp 相似度 53
.\result\q\q.bmp 相似度 59
.\result\r\r.bmp 相似度 74
.\result\s\s.bmp 相似度 61
.\result\t\t.bmp 相似度 61
.\result\u\u.bmp 相似度 56
.\result\v\v.bmp 相似度 70
.\result\w\w.bmp 相似度 54
.\result\x\x.bmp 相似度 54
.\result\y\y.bmp 相似度 54
.\result\z\z.bmp 相似度 72

各图片的相似度及图片路径:
{'59': '.\\result\\j\\j.bmp', '71': '.\\result\\i\\i.bmp', '48': '.\\result\\b\\b.bmp', '49': '.\\result\\2\\2.bmp', '55': '.\\result\\m\\m.bmp', '54': '.\\result\\4\\4.bmp', '57': '.\\result\\c\\c.bmp', '56': '.\\result\\8\\8.bmp', '51': '.\\result\\5\\5.bmp', '50': '.\\result\\h\\h.bmp', '53': '.\\result\\p\\p.bmp', '52': '.\\result\\3\\3.bmp', '61': '.\\result\\g\\g.bmp', '62': '.\\result\\e\\e.bmp', '74': '.\\result\\r\\r.bmp', '72': '.\\result\\z\\z.bmp', '66': '.\\result\\7\\7.bmp', '70': '.\\result\\v\\v.bmp', '80': '.\\result\\a\\a.bmp'} 


所有相似度的百分值集合:
[49, 52, 54, 51, 49, 66, 56, 49, 80, 48, 57, 56, 62, 66, 61, 50, 71, 59, 49, 55, 54, 53, 59, 74, 61, 61, 56, 70, 54, 54, 54, 72] 


.\BigImg\10003.bmp 

.\result\2\2.bmp 相似度 45
.\result\3\3.bmp 相似度 54
.\result\4\4.bmp 相似度 68
.\result\5\5.bmp 相似度 63
.\result\6\6.bmp 相似度 61
.\result\7\7.bmp 相似度 44
.\result\8\8.bmp 相似度 60
.\result\9\9.bmp 相似度 55
.\result\a\a.bmp 相似度 64
.\result\b\b.bmp 相似度 86
.\result\c\c.bmp 相似度 57
.\result\d\d.bmp 相似度 82
.\result\e\e.bmp 相似度 72
.\result\f\f.bmp 相似度 56
.\result\g\g.bmp 相似度 83
.\result\h\h.bmp 相似度 92
.\result\i\i.bmp 相似度 59
.\result\j\j.bmp 相似度 61
.\result\k\k.bmp 相似度 61
.\result\m\m.bmp 相似度 95
.\result\n\n.bmp 相似度 94
.\result\p\p.bmp 相似度 87
.\result\q\q.bmp 相似度 83
.\result\r\r.bmp 相似度 56
.\result\s\s.bmp 相似度 57
.\result\t\t.bmp 相似度 51
.\result\u\u.bmp 相似度 88
.\result\v\v.bmp 相似度 56
.\result\w\w.bmp 相似度 62
.\result\x\x.bmp 相似度 52
.\result\y\y.bmp 相似度 58
.\result\z\z.bmp 相似度 50

各图片的相似度及图片路径:
{'50': '.\\result\\z\\z.bmp', '60': '.\\result\\8\\8.bmp', '61': '.\\result\\6\\6.bmp', '88': '.\\result\\u\\u.bmp', '63': '.\\result\\5\\5.bmp', '64': '.\\result\\a\\a.bmp', '82': '.\\result\\d\\d.bmp', '83': '.\\result\\g\\g.bmp', '86': '.\\result\\b\\b.bmp', '87': '.\\result\\p\\p.bmp', '44': '.\\result\\7\\7.bmp', '45': '.\\result\\2\\2.bmp', '68': '.\\result\\4\\4.bmp', '72': '.\\result\\e\\e.bmp', '92': '.\\result\\h\\h.bmp', '95': '.\\result\\m\\m.bmp', '94': '.\\result\\n\\n.bmp', '59': '.\\result\\i\\i.bmp', '58': '.\\result\\y\\y.bmp', '55': '.\\result\\9\\9.bmp', '54': '.\\result\\3\\3.bmp', '57': '.\\result\\c\\c.bmp', '56': '.\\result\\f\\f.bmp', '51': '.\\result\\t\\t.bmp', '62': '.\\result\\w\\w.bmp', '52': '.\\result\\x\\x.bmp'} 


所有相似度的百分值集合:
[45, 54, 68, 63, 61, 44, 60, 55, 64, 86, 57, 82, 72, 56, 83, 92, 59, 61, 61, 95, 94, 87, 83, 56, 57, 51, 88, 56, 62, 52, 58, 50] 


['r', 'd', 'a', 'm'] 

rdam
>>> 


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值