美文网首页
基于python的图片验证码的制作

基于python的图片验证码的制作

作者: 奋斗的大鹏 | 来源:发表于2018-02-06 20:54 被阅读0次

''' 验证码的图片制作 ''' 

from PIL import Image,ImageFilter,ImageDraw,ImageFont

import random

def rndChar():

     return chr(random.randint(65, 90)) # 随机颜色1: 

def rndColor(): 

     return (random.randint(64, 255),

     random.randint(64, 255)

     random.randint(64, 255)) # 随机颜色2: 

def rndColor2(): 

     return (random.randint(32, 127)

     random.randint(32, 127),

     random.randint(32, 127)) 

width = 210 

height = 100 

img = Image.new('RGB',(width,height),(255,255,255)) 

font = ImageFont.truetype("arial.ttf", 36) 

# font = ImageFont.truetype('Arial.ttf', 36) 

# 创建Draw对象: draw = ImageDraw.Draw(img)

# 填充每个像素: 

for x in range(width): 

     for y in range(height): 

         draw.point((x, y)

         fill=rndColor()) 

l=[]       #定义一个列表,保存图片内容

# 输出文字:

for t in range(4): 

     m = rndChar()

     draw.text((55 * t + 10, 20), m, font=font, fill=rndColor2())     l.append(m) 

# 模糊: 

# image = img.filter(ImageFilter.BLUR) 

# image.show() 

print(l)          #输出图片中的字符串,以便于进行后期的比较

img.show()     #查看效果图

img.save(r'C:\Users\鹏COMPUTER\Desktop\m.jpg', 'jpeg');

这以上是我所觉得简单的代码,做了额外的小部分扩充,但是这个的背景是根据每个点都设置不同的颜色,所以有了背景色,否则背景色是白色。

刚接触,希望路过的的大神可以指出更好的方法,互相学习!

相关文章

网友评论

      本文标题:基于python的图片验证码的制作

      本文链接:https://www.haomeiwen.com/subject/usrnzxtx.html