📅  最后修改于: 2023-12-03 15:07:46.609000             🧑  作者: Mango
captcha.image 是一个用于生成验证码图片的 Python 库。它支持多种字体、颜色、背景等样式,并且可以自定义验证码长度和字符集。
为了在 Python 中使用 captcha.image,需要先安装该库。下面是安装步骤:
首先,打开终端并进入 Python 环境。然后,使用 pip 命令来安装 captcha.image:
pip install captcha
等待安装完成后,就可以在 Python 脚本中使用 captcha.image 了。
以下是一个简单的例子,演示了如何使用 captcha.image 生成验证码图片:
from captcha.image import ImageCaptcha
import random
# 定义验证码长度和字符集
length = 4
characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
# 创建 ImageCaptcha 对象
captcha = ImageCaptcha(width=160, height=60)
# 生成随机验证码
code = ''.join(random.choices(characters, k=length))
# 生成验证码图片并保存
image = captcha.generate_image(code)
image.save('captcha.png')
以上代码中,首先导入了 ImageCaptcha 类和 random 模块。然后,定义了验证码长度和字符集。接着,创建了一个 ImageCaptcha 对象,并指定了验证码图片的宽度和高度。最后,生成随机验证码,并使用 generate_image() 方法生成验证码图片,并保存到本地文件。
除了默认样式外,captcha.image 支持多种字体、颜色、背景等样式设置。以下是一个例子,演示了如何设置验证码图片的样式:
from captcha.image import ImageCaptcha, random_color
import random
# 定义验证码长度和字符集
length = 4
characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
# 创建 ImageCaptcha 对象
captcha = ImageCaptcha(width=160, height=60)
# 设置字体
font_list = ['fonts/Roboto-Black.ttf', 'fonts/Lobster-Regular.ttf', 'fonts/Pacifico-Regular.ttf']
font_path = random.choice(font_list)
captcha.fonts = [font_path]
# 设置文字颜色
foreground = random_color(150, 255, random.randint(0, 255))
background = random_color(0, 100, random.randint(0, 255))
captcha.color = (foreground, background)
# 设置背景
captcha.background_color = random_color(220, 255)
# 生成随机验证码
code = ''.join(random.choices(characters, k=length))
# 生成验证码图片并保存
image = captcha.generate_image(code)
image.save('captcha.png')
以上代码中,除了前面的部分与之前相同,后面还设置了以下样式:
captcha.fonts
属性设置多个字体,随机选择其中之一。captcha.color
属性。captcha.background_color
属性。通过设置样式,可以生成不同风格的验证码图片。
安装完成后,就可以使用 captcha.image 来生成验证码图片了。如果要设置验证码图片的样式,可以通过相应的属性进行设置,从而得到不同风格的验证码图片。