在python项目中生成图形验证码

我们使用第三方captcha扩展包生成图形验证码

注:安装Python处理图片的库:pip install Pillow

  • 首先配置redis缓存数据库的的连接用来存储验证码
verify_code": { # 验证码
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379/2",  # redis://ip:port/库
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
        }
    },
  • 图形验证码生成代码并保存到redis中:
from django.views import View
# 导入第三方包中的图形验证码生成方式
from meiduo_mall.libs.captcha.captcha import captcha
from django_redis import get_redis_connection


class ImageCodeView(View):
    def get(self, request, uuid):
        # 1.生成图片的文本、数据
        text, code, image = captcha.generate_captcha()
        # 2.保存图片文本,用于后续与用户输入值对比
        redis_cli = get_redis_connection('image_code')
        redis_cli.setex(uuid, 5*60, code)
        # 响应:输出图片数据,并声明其类型为图片类型
        return http.HttpResponse(image, content_type='image/png')
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • # Python 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列...
    小迈克阅读 3,039评论 1 3
  • 生成图形验证码.py #coding=utf-8import random,osimport stringfrom...
    97833632c0c7阅读 3,003评论 1 0
  • 周末,有朋友提议到乡下小聚,赏景之余顺便动手劳作忆苦思甜。 江南的冬天,根本没多少农活,无非是园子里摘点蔬菜,配合...
    乌图阅读 3,079评论 26 78
  • 一个人生活在这个城市里面,为了能吃饱就已经费劲了力气。还谈什么理想。那简直就是我们的美梦。 我想我们彼此的人生就是...
    Rebecca_2be3阅读 132评论 0 0
  • 记得在四川生活的时候、 楼下的超市是一对年轻夫妇在经营。 没什么特别,和其他居民区的小超市一样,麻雀虽小五脏俱全。...
    鹿和树的office阅读 299评论 0 1