本文介绍一个简单的利用 captcha 模块生成验证码的方法。
版本:Ubuntu 16.04 LTS,Python 3.6.7,captcha 0.3
安装 captcha:pip install captcha
示例代码如下:
# -*- coding: utf-8 -*-
import cv2
import numpy as np
from captcha.image import ImageCaptcha
def generate_captcha(text='1'):
"""Generate a digit image."""
capt = ImageCaptcha(width=224, height=224, font_sizes=[200])
image = capt.generate_image(text)
image = np.array(image, dtype=np.uint8)
return image
if __name__ == '__main__':
train_output_dir = './train_images/'
test_output_dir = './test_images/'
for i in range(9000):
label = np.random.randint(0, 10)
image = generate_captcha(str(label))
image_name = 'image{}_{}.jpg'.format(i+1, label)
output_path = train_output_dir + image_name
cv2.imwrite(output_path, image)
print ("geneTrainData_"+str(i))
for i in range(1000):
label = np.random.randint(0, 10)
image = generate_captcha(str(label))
image_name = 'image{}_{}.jpg'.format(i+1, label)
output_path = test_output_dir + image_name
cv2.imwrite(output_path, image)
print ("geneTestData_"+str(i))