在django中生成英文单词验证码,提供验证码图片生成,检查验证码等功能
在线demo http://django-captcha.t-y.me/
- 新增数字验证码模式
- 字体尺寸根据图片长宽自适应
- 增加干扰强度的配置选项,用户可以根据需要选择不同的干扰强度输出
- 增加默认单词库的长度
- 增加批量生成验证码图片功能
####Install####
pip install DjangoCaptcha
or
easy_install DjangoCaptcha
####Display####
# views.py
from DjangoCaptcha import Captcha
def code(request):
ca = Captcha(request)
ca.words = ['hello','world','helloworld']
ca.type = 'word'
return ca.display()
or
from DjangoCaptcha import Captcha
def code(request):
figures = [2,3,4,5,6,7,8,9]
ca = Captcha(request)
ca.words = [''.join([str(random.sample(figures,1)[0]) for i in range(0,4)])]
ca.type = 'word'
ca.img_width = 100
ca.img_height = 30
return ca.display()
# Views.py
from DjangoCaptcha import Captcha
def index(request):
_code = request.GET.get('code') or ''
if not _code:
return render('index.html',locals())
ca = Captcha(request)
if ca.validate(_code):
return HttpResponse('验证成功')
else:
return HttpResponse('验证失败')
ca.img_width
= 150
ca.img_height
= 30
ca.type = 'number'
or
ca.type = 'word'