分享好友 资讯首页 资讯分类 切换频道

如何用python生成验证码

2026-02-12 18:3010

生成验证码通常涉及到图形和字符的随机组合。在Python中,我们可以使用PIL(Pillow)库来生成图像,并使用random库来随机生成字符。以下是一个简单的例子来生成验证码。

如何用python生成验证码

确保你已经安装了Pillow库,如果没有安装,可以使用pip进行安装:

pip install pillow

你可以使用以下代码来生成验证码:

import random
import string
from PIL import Image, ImageDraw, ImageFont
def generate_captcha_text(length=6):
    """生成随机的验证码文本"""
    return ’’.join(random.choices(string.ascii_letters + string.digits, k=length))
def generate_captcha_image(text, image_width=200, image_height=100):
    """生成验证码图像"""
    # 创建图像对象
    image = Image.new(’RGB’, (image_width, image_height), color=(73, 109, 137))  # 设置背景颜色为蓝色
    font = ImageFont.truetype(’arial.ttf’, 36)  # 使用arial字体和大小36的字体样式
    draw = ImageDraw.Draw(image)  # 创建Draw对象来绘制图像
    text_width, text_height = draw.textsize(text, font)  # 获取文本的宽度和高度
    position = ((image_width - text_width) // 2, (image_height - text_height) // 2)  # 计算文本的位置使其居中显示
    draw.text(position, text, font=font, fill=(255, 255, 0))  # 在图像上绘制文本,颜色为黄色(验证码文字颜色)
    return image
def generate_captcha():
    """生成验证码并保存图像"""
    text = generate_captcha_text()  # 生成验证码文本
    image = generate_captcha_image(text)  # 生成验证码图像
    image.save(’captcha.png’)  # 保存图像到本地文件(你可以根据需要更改文件名和路径)
    return text  # 返回验证码文本以便验证用户输入是否正确
生成验证码并打印出来(这里只是演示,实际使用时可能需要其他方式来展示给用户)
print(generate_captcha())

这段代码首先定义了一个函数generate_captcha_text()来生成随机的验证码文本,然后定义了generate_captcha_image()函数来创建包含文本的图像。generate_captcha()函数结合了这两个函数来生成并保存验证码图像,你可以根据需要调整图像的大小、背景颜色和字体样式等参数,生成的图像会保存在当前目录下,并命名为captcha.png,返回的验证码文本可以用于验证用户输入的正确性。

举报
收藏 0
打赏 0
评论 0
淘宝账号用手机号注册的还能改吗怎么改
淘宝账号注册后,绑定的手机号可以更改。如需更改,进入淘宝设置,选择账户与安全,找到绑定手机选项,验证身份后更换手机号即可。详情建议查阅淘宝官方指南或咨询客服。

0评论2026-04-070

 
友情链接