最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python如何生成網(wǎng)頁(yè)驗(yàn)證碼

 更新時(shí)間:2018年07月28日 10:22:59   作者:WangF0  
這篇文章主要為大家詳細(xì)介紹了python如何生成網(wǎng)頁(yè)驗(yàn)證碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了python生成網(wǎng)頁(yè)驗(yàn)證碼的具體代碼,供大家參考,具體內(nèi)容如下

驗(yàn)證碼為pil模塊生成,可直接應(yīng)用于django框架當(dāng)中。

首先需要安裝Pillow模塊 我們這里使用的版本為3.4.1
終端中直接輸入指令 pip install Pillow==3.4.1

from PIL import Image, ImageDraw, ImageFont
from django.utils.six import BytesIO

def verify_code(request):
  #引入隨機(jī)函數(shù)模塊
  import random
  #定義變量,用于畫面的背景色、寬、高
  bgcolor = (random.randrange(20, 100), random.randrange(
    20, 100), 255)
  width = 100
  height = 25
  #創(chuàng)建畫面對(duì)象
  im = Image.new('RGB', (width, height), bgcolor)
  #創(chuàng)建畫筆對(duì)象
  draw = ImageDraw.Draw(im)
  #調(diào)用畫筆的point()函數(shù)繪制噪點(diǎn)
  for i in range(0, 100):
    xy = (random.randrange(0, width), random.randrange(0, height))
    fill = (random.randrange(0, 255), 255, random.randrange(0, 255))
    draw.point(xy, fill=fill)
  #定義驗(yàn)證碼的備選值
  str1 = 'ABCD123EFGHIJK456LMNOPQRS789TUVWXYZ0'
  #隨機(jī)選取4個(gè)值作為驗(yàn)證碼
  rand_str = ''
  for i in range(0, 4):
    rand_str += str1[random.randrange(0, len(str1))]
  #構(gòu)造字體對(duì)象,ubuntu的字體路徑為“/usr/share/fonts/truetype/freefont”
  font = ImageFont.truetype('FreeMono.ttf', 23)
  #構(gòu)造字體顏色
  fontcolor = (255, random.randrange(0, 255), random.randrange(0, 255))
  #繪制4個(gè)字
  draw.text((5, 2), rand_str[0], font=font, fill=fontcolor)
  draw.text((25, 2), rand_str[1], font=font, fill=fontcolor)
  draw.text((50, 2), rand_str[2], font=font, fill=fontcolor)
  draw.text((75, 2), rand_str[3], font=font, fill=fontcolor)
  #釋放畫筆
  del draw
  #存入session,用于做進(jìn)一步驗(yàn)證
  request.session['verifycode'] = rand_str
  #內(nèi)存文件操作
  buf = BytesIO()
  #將圖片保存在內(nèi)存中,文件類型為png
  im.save(buf, 'png')
  #將內(nèi)存中的圖片數(shù)據(jù)返回給客戶端,MIME類型為圖片png
  return HttpResponse(buf.getvalue(), 'image/png'

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

惠东县| 杨浦区| 泸西县| 南雄市| 平潭县| 雅江县| 达拉特旗| 萨迦县| 石景山区| 瑞安市| 莆田市| 灵璧县| 福泉市| 深水埗区| 永兴县| 顺平县| 安国市| 乌拉特后旗| 革吉县| 三台县| 珠海市| 白银市| 商城县| 双峰县| 吉安县| 淮阳县| 乌拉特中旗| 宜良县| 新安县| 沈阳市| 宾川县| 聂拉木县| 娄底市| 昌江| 黔南| 彭州市| 北安市| 龙陵县| 饶河县| 甘谷县| 黑龙江省|