Python验证码识别的方法

yipeiwu_com7年前Python基础

本文实例讲述了Python验证码识别的方法。分享给大家供大家参考。具体实现方法如下:

#encoding=utf-8
import Image,ImageEnhance,ImageFilter
import sys
image_name = "./22.jpeg"
#去处 干扰点
im = Image.open(image_name)
im = im.filter(ImageFilter.MedianFilter())
enhancer = ImageEnhance.Contrast(im)
im = enhancer.enhance(2)
im = im.convert('1')
#im.show() #测试查看
s = 12   #启始 切割点 x
t = 2    #启始 切割点 y
w = 10   #切割 宽 +y
h = 15   #切割 长 +x
im_new = []
for i in range(4): #验证码切割
  im1 = im.crop((s+w*i+i*2,t,s+w*(i+1)+i*2,h))
  im_new.append(im1)
#im_new[0].show()#测试查看
xsize, ysize = im_new[0].size
gd = []
for i in range(ysize):
  tmp=[]
  for j in range(xsize):
    if( im_new[0].getpixel((j,i)) == 255 ):
      tmp.append(1)
    else:
      tmp.append(0)
  gd.append(tmp)
#看效果
for i in range(ysize):
  print gd[i]

希望本文所述对大家的Python程序设计有所帮助。

相关文章

pandas实现DataFrame显示最大行列,不省略显示实例

如下所示: import pandas as pd #显示所有列 pd.set_option('display.max_columns', None) #显示所有行 pd.set_...

Python ValueError: invalid literal for int() with base 10 实用解决方法

今天在写爬虫程序的时候由于要翻页,做除法分页的时候出现了 复制代码 代码如下: totalCount = '100' totalPage = int(totalCount)/20 Va...

python实现比较两段文本不同之处的方法

本文实例讲述了python实现比较两段文本不同之处的方法。分享给大家供大家参考。具体实现方法如下: # find the difference between two texts #...

pytorch实现特殊的Module--Sqeuential三种写法

我就废话不多说了,直接上代码吧! # -*- coding: utf-8 -*- #@Time :2019/7/1 13:34 #@Author :XiaoMa import...

九步学会Python装饰器

本文实例讲述了Python装饰器。分享给大家供大家参考。具体分析如下: 这是在Python学习小组上介绍的内容,现学现卖、多练习是好的学习方式。 第一步:最简单的函数,准备附加额外功能...