Python随机数生成验证码
时间: 2023-07-18 16:11:04 浏览: 142
可以使用Python内置的random模块生成随机数,并结合Pillow库生成验证码图片。以下是一个简单的示例:
```python
import random
from PIL import Image, ImageDraw, ImageFont
# 验证码图片大小
width, height = 120, 40
# 生成随机验证码
def generate_code(length=4):
# 可选字符集合
choices = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
code = ''
for i in range(length):
code += random.choice(choices)
return code
# 生成验证码图片
def generate_image(code):
image = Image.new('RGB', (width, height), (255, 255, 255))
font = ImageFont.truetype('arial.ttf', 28)
draw = ImageDraw.Draw(image)
for i in range(len(code)):
draw.text((i * (width // len(code)) + 10, 5), code[i], font=font, fill=(0, 0, 0))
# 加入干扰点
for i in range(random.randint(100, 150)):
draw.point((random.randint(0, width), random.randint(0, height)), fill=(0, 0, 0))
return image
# 生成并保存验证码图片
code = generate_code()
image = generate_image(code)
image.save('code.png')
```
运行上述代码后,会在当前目录下生成一个名为`code.png`的验证码图片。
阅读全文