色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

python 畫驗證碼

劉柏宏1年前7瀏覽0評論

驗證碼是一個常用于防止機器惡意刷單、刷票等行為的安全技術。Python是一種很方便畫驗證碼的語言,在這篇文章中我們將介紹如何使用Python繪制驗證碼。

import random
from PIL import Image, ImageDraw, ImageFont
# 生成隨機字符串
def get_random_str(length=4):
str_list = [chr(random.randint(65, 90)) for i in range(length)]
return ''.join(str_list)
# 隨機字體顏色
def random_color():
return (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255))
# 隨機背景顏色
def random_bg_color():
return (random.randint(200, 255), random.randint(200, 255), random.randint(200, 255))
# 生成驗證碼圖片
def generate_captcha(length=4, size=(120, 30)):
rand_str = get_random_str(length)
img = Image.new('RGB', size, random_bg_color())
draw = ImageDraw.Draw(img)
font = ImageFont.truetype('arial.ttf', size[1])
font_width, font_height = font.getsize(rand_str)
draw.text(((size[0]-font_width)/2, (size[1]-font_height)/2), rand_str, font=font, fill=random_color())
return img, rand_str
# 測試代碼
if __name__ == '__main__':
img, rand_str = generate_captcha()
img.show()
print(rand_str)

上面的代碼中,我們使用了Python自帶的隨機數模塊和Pillow庫來生成隨機字符串和畫圖。其中關鍵的函數是generate_captcha()函數,它接收兩個參數:驗證碼長度和圖片大小。我們首先生成一個隨機的字符串,再創建一個RGB模式的圖片,并隨機生成背景顏色。然后,使用隨機的字體顏色將字符串畫到圖片中心處,并將該圖片和隨機字符串一起返回。最后,我們寫了一段測試代碼來顯示生成的驗證碼圖片和輸出對應的隨機字符串。

通過這樣的代碼,我們可以輕松生成定制化的驗證碼圖片,并且根據需要對相關的參數進行調整,為網站的安全提供一定的保障。