在Python中,你可以使用`PIL`(Python Imaging Library)库来创建验证码图片。以下是一个简单的示例,展示了如何生成一个包含数字和大小写字母的验证码:
from PIL import Image, ImageDraw, ImageFontimport randomimport stringdef generate_captcha(size=(100, 50), chars=string.ascii_letters + string.digits, font_path='arial.ttf', bgcolor=(255, 255, 255), font_color=(0, 0, 0)):创建图像image = Image.new('RGB', size, bgcolor)创建画布draw = ImageDraw.Draw(image)加载字体font = ImageFont.truetype(font_path, 40)生成随机文本captcha_text = ''.join(random.choice(chars) for _ in range(6))获取文本尺寸text_width, text_height = draw.textsize(captcha_text, font=font)文本位置x = (size - text_width) / 2y = (size - text_height) / 2绘制文本draw.text((x, y), captcha_text, font=font, fill=font_color)return image生成验证码图片captcha_image = generate_captcha()保存图片到文件captcha_image.save('captcha.png')显示图片captcha_image.show()
这段代码定义了一个`generate_captcha`函数,它接受一些参数来控制验证码的尺寸、字符集、字体路径、背景色和字体色。函数创建一个图像,绘制随机文本,然后保存并显示图像。
如果你需要更复杂的验证码,比如包含干扰线或扭曲效果,你可能需要使用更高级的图像处理技术。

另外,如果你使用的是Django框架,你还可以使用第三方库如`gvcode`或`captcha`来快速生成验证码。例如,使用`gvcode`库:
import gvcodesv = gvcodes.generate()v.show() 显示验证码图片print(v) 打印验证码字符串
安装`gvcode`库,只需运行`pip install gvcode`。
