Pillow:
绘图工具包
验证码:在用户登录,注册以及一些敏感操作时,为了防止服务器被暴力请求,或爬虫爬取,我们可以使用验证码进行过滤,减轻服务器的压力
使用绘图Pillow可以制作验证码图片
首先安装:
pip install Pillow
核心: Image/ImageDraw/ImageFont
绘制流程
mode = 'RGB' # 指定绘制模式
size = '200,100' # 指定画布大小
color_bg = (255,0,0) # 指定画布背景颜色
image = Image.new(mode=mode, size=size, color=color_bg) # 初始化画布
imagedraw = ImageDraw(image, mode=mode) # 初始化画笔
imagefont = ImageFont.truetype(settings.FONT_PATH, 50) # 创建字体字号,参数为settings中配置的字体文件路径和字号数字
imagedraw.text(xy=(0,0), text='text', font=imagefont) # 绘制内容
fp=BytesIO() # fp:文件输出流的位置,使用BytesIO来创建一个字节的IO内存流
image.save(fp,'png') # 将图像存储在内存流中,指定存储文件格式
return HttpResponse(fp.getvalue(), content_type='image/png') # 使用getvalue来获取内存流中的图像,指定格式返回给客户端