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")

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值