python3实现随机生成验证码图片并存储

import Image
import ImageDraw
import random
import  ImageFont
#定义随机字符,定义随机颜色,把随机颜色填充到画布上,在画布上定义随机字符
#随机字符方法
def getchar():
    if random.randint(0,1):
        return chr(random.randint(65, 90))
    else:
        return str(random.randint(0,9))

#定义随机颜色
def getcolor():
    return (random.randint(0,255), random.randint(0,255), random.randint(0,255),)
#Image.new()
if __name__ == '__main__':
    WIDTH =260
    HEIGHT = 80
    font_list = []
    #定义一个图片背景
    im = Image.new(mode="RGB", size = (WIDTH, HEIGHT), color = (255, 255, 255))
    #给背景图加随机颜色
    dr = ImageDraw.Draw(im = im)
    #循环遍历每一个像素点
    for x in range(WIDTH):
        for y in range(HEIGHT):
            dr.point(xy = (x, y), fill = getcolor())
    #定义字体
    #往图像上添加随机字符
    x = 20
    for i in range(4):
        font_list = ["01.TTF", "02.TTF", "03.TTF", "04.TTF", "05.TTF", "06.TTF", "07.TTF"]
        font = ImageFont.truetype(font=font_list[random.randint(0, 6)], size=60)
        dr.text(xy=(x,10), text=getchar(), font=font, fill=getcolor())
        x += 60
    im.show()
    im.save("验证码.png", "PNG")
发布了84 篇原创文章 · 获赞 10 · 访问量 8580

猜你喜欢

转载自blog.csdn.net/AK47red/article/details/103721698