python自动生成验证码
时间: 2023-06-26 15:09:58 浏览: 92
可以使用Python的Pillow库来生成验证码。以下是一个简单的示例代码:
```python
from PIL import Image, ImageDraw, ImageFont
import random
# 生成随机字符串
def generate_code(length):
code = ''
for i in range(length):
# 随机生成数字或字母
num = random.randint(1, 3)
if num == 1:
code += chr(random.randint(48, 57))
elif num == 2:
code += chr(random.randint(65, 90))
else:
code += chr(random.randint(97, 122))
return code
# 生成验证码图片
def generate_image(size, code):
# 创建一个Image对象
image = Image.new('RGB', size, (255,255,255))
# 创建一个Draw对象
draw = ImageDraw.Draw(image)
# 设置字体
font = ImageFont.truetype('arial.ttf', 36)
# 绘制字符串
draw.text((10,10), code, font=font, fill=(0,0,0))
# 绘制干扰点
for i in range(100):
x = random.randint(1, size[0]-1)
y = random.randint(1, size[1]-1)
draw.point((x,y), fill=(0,0,0))
# 返回Image对象
return image
# 生成验证码并保存到文件
code = generate_code(4)
image = generate_image((150,50), code)
image.save('code.png')
```
这个示例代码会生成一个包含4个字符的验证码图片,并将其保存到文件“code.png”中。你可以根据需要调整字符个数、图片大小、字体、颜色等参数。
阅读全文