在互聯網應用中,驗證碼是很重要的一環,旨在防止暴力破解、惡意刷單、機器人注冊等各種惡意行為。Python 作為一種廣泛使用的高級編程語言,也提供了多種生成和處理驗證碼的方式。
# 下面是一個使用 Python3.x 和 Pillow(PIL) 庫生成簡單驗證碼的示例代碼 from PIL import Image, ImageDraw, ImageFont import random # 隨機字母生成 def rndChar(): return chr(random.randint(65, 90)) # 隨機顏色生成 def rndColor(): return (random.randint(64, 255), random.randint(64, 255), random.randint(64, 255)) # 隨機背景顏色生成 def rndBgColor(): return (random.randint(32, 127), random.randint(32, 127), random.randint(32, 127)) # 創建圖像對象 width = 240 height = 60 im = Image.new('RGB', (width, height), (255, 255, 255)) # 創建 Font 對象 font = ImageFont.truetype('arial.ttf', 36) # 創建 Draw 對象 draw = ImageDraw.Draw(im) # 繪制驗證碼 for x in range(width): for y in range(height): draw.point((x, y), fill=rndBgColor()) for t in range(4): draw.text((60*t+10, 10), rndChar(), font=font, fill=rndColor()) # 模糊處理 im = im.filter(ImageFilter.BLUR) im.save('code.jpg', 'jpeg')
以上示例代碼生成的驗證碼,是隨機生成四個字母,并隨機生成字母、背景顏色,最后進行模糊處理。通過這種方式,可以自定義生成多種不同樣式的驗證碼。