中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用Python實現隨機生成圖片驗證碼

發布時間:2022-01-19 13:29:22 來源:億速云 閱讀:140 作者:iii 欄目:開發技術

本篇內容主要講解“怎么用Python實現隨機生成圖片驗證碼”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么用Python實現隨機生成圖片驗證碼”吧!

導入模塊

import random
from PIL import Image,ImageFont,ImageDraw

生成隨機驗證碼

def rndtxt():
    txt_list = []
    # 大寫字母
    txt_list.extend([i for i in range(65,90)])
    # 小寫字母
    txt_list.extend([i for i in range(97,123)])
    # 數字
    txt_list.extend([i for i in range(48,57)])
    return chr(txt_list[random.randint(0,len(txt_list)-1)])

作為待會生成的圖片背景色和字體色

def rndbgcolor():
    # 背景顏色
    return (random.randint(64,255),random.randint(64,255),random.randint(64,255))
 
def rndtxtcolor2():
    # 字體顏色
    return (random.randint(32,127),random.randint(32,127),random.randint(32,127))

進行生成打印驗證碼并以圖片的形式打開,不保存圖片文件,僅用于一時的驗證碼驗證

def code():
    weight = 240
    hight = 60
    image = Image.new('RGB',(weight,hight),(255,255,255))
    font = ImageFont.truetype('msyh.ttc',36)
    draw = ImageDraw.Draw(image)
 
    # 填充背景顏色
    for x in range(weight):
        for y in range(hight):
            draw.point((x,y),fill=rndbgcolor())
 
    # 生成隨機驗證碼
    for T in range(4):
        rndtxt_2 = rndtxt()
        print(rndtxt_2)       # 打印驗證碼的值
        draw.text((60 * T + 10,10),rndtxt_2,font=font,fill=rndtxtcolor2())
    image.show()

怎么用Python實現隨機生成圖片驗證碼

完整代碼:

#!/usr/bin/env python3
import random
from PIL import Image,ImageFont,ImageDraw
 
def rndtxt():
    txt_list = []
    # 大寫字母
    txt_list.extend([i for i in range(65,90)])
    # 小寫字母
    txt_list.extend([i for i in range(97,123)])
    # 數字
    txt_list.extend([i for i in range(48,57)])
    return chr(txt_list[random.randint(0,len(txt_list)-1)])
 
def rndbgcolor():
    # 背景顏色
    return (random.randint(64,255),random.randint(64,255),random.randint(64,255))
 
def rndtxtcolor2():
    # 字體顏色
    return (random.randint(32,127),random.randint(32,127),random.randint(32,127))
 
def code():
    weight = 240
    hight = 60
    image = Image.new('RGB',(weight,hight),(255,255,255))
    font = ImageFont.truetype('msyh.ttc',36)
    draw = ImageDraw.Draw(image)
 
    # 填充背景顏色
    for x in range(weight):
        for y in range(hight):
            draw.point((x,y),fill=rndbgcolor())
 
    # 生成隨機驗證碼
    for T in range(4):
        rndtxt_2 = rndtxt()
        print(rndtxt_2)       # 打印驗證碼的值
        draw.text((60 * T + 10,10),rndtxt_2,font=font,fill=rndtxtcolor2())
    image.show()
 
code()

到此,相信大家對“怎么用Python實現隨機生成圖片驗證碼”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

嘉鱼县| 富民县| 石屏县| 南城县| 南丰县| 翼城县| 定日县| 丰城市| 阿克陶县| 乌恰县| 桐城市| 巧家县| 鄂托克前旗| 泸水县| 陵川县| 芦溪县| 云梦县| 迁安市| 五大连池市| 峨眉山市| 芒康县| 文安县| 容城县| 台湾省| 仲巴县| 义马市| 明光市| 红桥区| 隆安县| 淳安县| 合水县| 南丹县| 林西县| 凤冈县| 兴城市| 县级市| 阳西县| 公主岭市| 若尔盖县| 庄河市| 临武县|