captcha -- 验证码生成模块

captcha 模块源代码在文件 applications/common/utils/captcha.py 下,主要用于生成验证码图片。

class captcha.vieCode

生成验证码图片。

__fontSize: int

字体大小,默认为 20。

__width: int

画布宽度,默认为 120。

__heigth: int

画布高度,默认为 45。

__length: int

验证码长度,默认为 4。

__draw: ImageDraw.Draw

画布对象。

__img: Image.Image

图片对象。

__code: list

验证码字符。

__str: str

自定义验证码字符集。

__inCurve: bool

是否绘制干扰曲线,默认为 True。

__inNoise: bool

是否绘制干扰点,默认为 True。

__type: int

验证码类型:1-纯字母,2-数字字母混合,默认为 2。

__fontPatn: str

字体路径,默认为 applications/common/utils/fonts/captcha.ttf

GetCodeImage(size=80, length=4)

生成验证码图片及其对应的验证码字符。

参数:
  • size -- 验证码字体大小,默认为 80。

  • length -- 验证码字符长度,默认为 4。

返回:

返回验证码图片对象和验证码字符。

示例:

vc = vieCode()
img, code = vc.GetCodeImage(size=60, length=6)
img.show()  # 显示验证码图片
print("验证码:", code)  # 输出验证码字符
__cerateFilter()

对验证码图片进行模糊处理,增加识别难度。

__createCode()

生成验证码字符。

__createImage()

创建画布并设置背景颜色。

__createNoise()

在验证码图片上绘制干扰点。

__createCurve()

在验证码图片上绘制干扰曲线。

__printString()

在画布上打印验证码字符。