使用pip install captcha 安裝模塊
import random import string import os import io from captcha.image import ImageCaptcha, random_color def generate_captcha(): # # 返回大寫字母 # uppercase = string.ascii_uppercase # # 返回小寫字母 # lowercase = string.ascii_lowercase # 返回大小寫字母 letters = string.ascii_letters # 返回數字 digits = string.digits # 隨機選取 4 個字符 random_str = ''.join([random.choice(digits+letters) for j in range(4)]) width, height = 170, 80 # 創建圖片生成器 generator = ImageCaptcha(width=width, height=height) # 創建驗證碼圖片 img = generator.create_captcha_image(chars=random_str, color=random_color(1, 255), background=random_color(1, 255)) # 為圖片增加干擾點 generator.create_noise_dots(img, random_color(1, 255)) # 為圖片增加干擾線 generator.create_noise_curve(img, random_color(1, 255)) # 展示圖片(展示圖片的操作與上面保不保存無關) img.show() # 保存生成的圖片到本地 fileName = "saveImg" if not os.path.exists(fileName): os.mkdir(fileName) img.save("%s/%s.png" % (fileName, random_str)) # 將圖片保存到緩存中 buffer = io.BytesIO() img.save(buffer, 'PNG') # 讀取圖片的byte值 image_data = buffer.getvalue() buffer.close() return random_str, image_data
生成的驗證碼樣式如下
前端展示效果