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

'''

验证码的图片制作

'''

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');

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值