在登录界面添加一个图片验证码是一种常见的防止机器人恶意登录的方式。下面是一个简单的示例代码,使用Python的Pillow库生成一个包含数字的图片验证码:
from PIL import Image, ImageDraw, ImageFont
import random
# 生成验证码
def generate_verification_code(code_length, font_size, width, height):
code = ''
image = Image.new('RGB', (width, height), (255, 255, 255))
draw = ImageDraw.Draw(image)
font = ImageFont.truetype('arial.ttf', font_size)
for i in range(code_length):
char = random.choice('1234567890')
code += char
x = width / code_length * i + random.randint(0, 10)
y = random.randint(0, height - font_size)
draw.text((x, y), char, font=font, fill=random_color())
return code, image
# 生成随机颜色
def random_color():
return tuple(random.randint(0, 255) for _ in range(3))
# 生成验证码图片并保存
code, image = generate_verification_code(4, 30, 120, 50)
image.save('verification_code.png')
你可以调用`generate_verification_code`函数来生成验证码,并将验证码显示在登录页面的相应位置。用户输入的验证码与生成的验证码进行比对,以确保用户的可信性。
这个示例代码使用了Pillow库来处理图片相关的操作,需要提前安装。同时,还需要一个名为`arial.ttf`的字体文件,你可以下载适合自己的字体文件或者使用其他默认可用的字体。
这只是一个简单的示例,验证码的复杂程度和生成方式可以根据你的需求进行调整。希望这个示例能帮助到你!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |