from captcha.image import ImageCaptcha
import matplotlib.pyplot as plt
import numpy as np
import random
import string
characters = string.digits + string.ascii_uppercase
print(characters)
generator = ImageCaptcha(width=170, height=80)
random_str = ''.join([random.choice(characters) for j in range(4)])
img = generator.generate_image(random_str)
plt.imshow(img)
plt.title(random_str)
plt.show()
from captcha.image import ImageCaptcha
help(ImageCaptcha)
__init__(self, width=160, height=60, fonts=None, font_sizes=None)
- ImageCaptcha生成验证码默认width=160, height=60
from captcha.image import ImageCaptcha
import numpy as np
import matplotlib.pyplot as plt
from PIL import Image
import random
import tensorflow as tf
char_set = string.digits + string.ascii_lowercase + string.ascii_uppercase
def random_captcha_text(char_set=char_set, 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)
captcha_image = Image.open(captcha)
captcha_image = np.array(captcha_image)
return captcha_text, captcha_image
str.find(str, beg=0, end=len(string))
参数:
str
beg
end
返回值:
如果包含子字符串返回开始的索引值,否则返回-1。