1. 程式人生 > >驗證碼的產生 python

驗證碼的產生 python

首先你要 pip install captcha
python 版本 3.5
本文轉載自斗大的熊貓

from captcha.image import ImageCaptcha  # pip install captcha
import numpy as np
import matplotlib.pyplot as plt
from PIL import Image
import random

# 驗證碼中的字元, 就不用漢字了
number = ['0','1','2','3','4','5','6','7','8','9']
alphabet = ['a','b','c','d','e'
,'f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'] ALPHABET = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'] # 驗證碼一般都無視大小寫;驗證碼長度4個字元 def random_captcha_text(char_set=number+alphabet+ALPHABET, captcha_size=4
)
:
captcha_text = [] for i in range(captcha_size): c = random.choice(char_set) captcha_text.append(c) return captcha_text # 生成字元對應的驗證碼 def gen_captcha_text_and_image(): image = ImageCaptcha() captcha_text = random_captcha_text() captcha_text = ''.join(captcha_text) captcha = image.generate(captcha_text) #image.write(captcha_text, captcha_text + '.jpg') # 寫到檔案
captcha_image = Image.open(captcha) captcha_image = np.array(captcha_image) return captcha_text, captcha_image if __name__ == '__main__': # 測試 text, image = gen_captcha_text_and_image() f = plt.figure() ax = f.add_subplot(111) ax.text(0.1, 0.9,text, ha='center', va='center', transform=ax.transAxes) plt.imshow(image) plt.show()

這裡寫圖片描述