验证码生成器python
时间: 2023-11-13 17:57:26 浏览: 47
好的,关于验证码生成器的问题,你可以使用 Python 中的 Pillow 库来生成验证码。下面是一个简单的示例代码:
```python
from PIL import Image, ImageDraw, ImageFont
import random
# 随机生成 4 个字符作为验证码
def generate_code():
code = ''
for i in range(4):
code += chr(random.randint(65, 90))
return code
# 生成验证码图片
def generate_image(code):
# 设置图片大小和背景色
width, height = 120, 50
bgcolor = (255, 255, 255)
# 创建 Image 对象
image = Image.new('RGB', (width, height), bgcolor)
# 创建 Draw 对象
draw = ImageDraw.Draw(image)
# 设置字体和字体大小
font = ImageFont.truetype('arial.ttf', 36)
# 在图片上绘制验证码
for i in range(4):
draw.text((10 + i * 25, 10), code[i], font=font, fill=random_color())
# 添加干扰点和线条
for i in range(random.randint(100, 150)):
draw.point((random.randint(0, width), random.randint(0, height)), fill=random_color())
for i in range(random.randint(3, 5)):
start = (random.randint(0, width), random.randint(0, height))
end = (random.randint(0, width), random.randint(0, height))
draw.line([start, end], fill=random_color(), width=2)
# 保存图片
image.save('code.png')
# 随机生成颜色
def random_color():
return (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255))
# 测试
if __name__ == '__main__':
code = generate_code()
generate_image(code)
print(code)
```
这个示例代码会生成一个包含 4 个随机字符的验证码图片,并保存为 `code.png` 文件。你可以根据需要修改图片大小、字体、干扰点和线条等参数。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)