图片验证码(通常称为 CAPTCHA)是一种用于区分人类和机器人的安全机制。它通常用于防止滥用网站或阻止自动化工具进行恶意活动。创建图片验证码涉及几个步骤,包括生成随机验证码字符串,创建图像,并在图像上绘制文本。以下是使用 Python 语言创建简单图片验证码的一个基本示例。

你需要安装一些库来帮助你完成这个任务,比如random(用于生成随机验证码字符串)、PIL(用于图像处理),如果你还没有安装这些库,可以使用 pip 安装:
pip install pillow
你可以使用以下 Python 代码来生成一个简单的图片验证码:

import random
from PIL import Image, ImageDraw, ImageFont
设置验证码长度和字体大小
CAPTCHA_LENGTH = 5 # 验证码长度,可以根据需要调整
FONT_SIZE = 36 # 字体大小,可以根据需要调整
FONT_PATH = "/path/to/your/font.ttf" # 字体文件的路径,需要替换为你自己的字体文件路径
def generate_captcha():
# 生成随机验证码字符串
captcha_text = ’’.join(random.sample(’ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789’, CAPTCHA_LENGTH))
print("验证码是:", captcha_text) # 输出生成的验证码字符串,用于验证用户输入是否正确
return captcha_text # 返回验证码字符串供后续验证使用
def create_captcha_image(captcha_text):
# 创建验证码图像并绘制文本
width, height = 200, 80 # 图像尺寸,可以根据需要调整
image = Image.new(’RGB’, (width, height), color=(255, 255, 255)) # 创建空白图像
draw = ImageDraw.Draw(image) # 创建绘图对象
font = ImageFont.truetype(FONT_PATH, FONT_SIZE) # 设置字体样式和大小
draw.text((10, 10), captcha_text, font=font, fill=(0, 0, 0)) # 在图像上绘制文本(验证码)
return image # 返回生成的图像对象供后续保存或展示使用
def save_captcha_image(image, captcha_text):
# 保存生成的验证码图像到文件系统中
image_path = f"captcha_{captcha_text}.png" # 设置保存的文件名(包含验证码字符串)
image.save(image_path) # 保存图像到文件系统中指定路径下(需要替换为你自己的路径)
print(f"验证码图像已保存到:{image_path}") # 输出保存的文件路径信息供用户参考使用
return image_path # 返回保存的文件路径供后续展示使用(可选)或用于其他用途(如上传服务器等)
if __name__ == "__main__":
captcha_text = generate_captcha() # 生成随机验证码字符串并获取其值(用于后续验证用户输入是否正确)
image = create_captcha_image(captcha_text) # 创建验证码图像并获取其对象(用于后续保存或展示)并绘制文本(验证码)到图像上,然后保存生成的图像到文件系统中指定路径下,最后返回保存的文件路径供后续展示使用(可选),这样你就完成了图片验证码的生成和保存过程,你可以根据需要进一步扩展此代码,例如添加噪声、扭曲文本等以增加安全性。
TIME
