生成验证码通常需要使用一些图像处理库来添加噪声和扭曲文本,以增加验证码的复杂性。Python中有一个流行的库叫做PIL(Pillow)可以用来生成验证码。以下是一个简单的例子,展示如何使用PIL生成包含数字和字母的验证码图片。

确保你已经安装了Pillow库,如果没有安装,可以使用pip来安装:
pip install pillow
你可以使用以下代码来生成验证码图片:
from PIL import Image, ImageDraw, ImageFont
import random
import string
def generate_captcha_text(length=4):
# 生成随机的验证码文本,包含大小写字母和数字
chars = string.ascii_letters + string.digits
return ’’.join(random.choice(chars) for _ in range(length))
def generate_captcha_image(text, output_path=’captcha.png’):
# 设置验证码图片的大小和背景色
width, height = 200, 100
background_color = (255, 255, 255) # 白色背景
font_size = 40 # 字体大小
font_color = (0, 0, 0) # 黑色字体
font = ImageFont.truetype(’arial.ttf’, font_size) # 使用arial字体(需要安装此字体)
image = Image.new(’RGB’, (width, height), background_color) # 创建新图片
draw = ImageDraw.Draw(image) # 创建绘图对象
draw.text((width // 2 - font_size // 2, height // 2 - font_size // 2), text, font=font, fill=font_color) # 在图片上绘制文本
draw.line([(width // 2 - 5, height // 2), (width // 2 + 5, height // 2)], fill=(random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), width=random.randint(1, 3)) # 添加一条随机线条干扰识别(可选)
image.save(output_path) # 保存图片到指定路径
return image # 返回图片对象(如果需要进一步处理)
生成验证码文本和图片并保存为captcha.png文件
captcha_text = generate_captcha_text() # 生成验证码文本(Abc1)
generate_captcha_image(captcha_text) # 生成验证码图片并保存到当前目录的captcha.png文件这段代码首先定义了一个函数generate_captcha_text()来生成随机的验证码文本,然后定义了一个函数generate_captcha_image()来生成包含文本的验证码图片,你可以通过调整参数来改变验证码的长度、大小、背景色等,代码生成一个验证码文本和图片,并将其保存为captcha.png文件,注意,这段代码使用了arial字体,你需要确保你的系统中安装了此字体,你也可以使用其他字体或自定义字体样式。





