Python3.6验证码随机生成

Python3.6验证码随机生成Python3.6验证码随机生成

欢迎大家来到IT世界,在知识的湖畔探索吧!

Python3.6验证码随机生成

验证码

这里主要使用到的库是captcha库,下载的命令如下:

pip install captcha

欢迎大家来到IT世界,在知识的湖畔探索吧!

验证码随机生成代码,(python 版本:3.6 captcha 版本:0.3)

代码如下:

欢迎大家来到IT世界,在知识的湖畔探索吧!#!/usr/bin/env python
# -*- coding: UTF-8 -*-
from captcha.image import ImageCaptcha
import numpy as np
import matplotlib.pyplot as plt
from PIL import Image
import random
# CSDN author:智轩软件专栏
# 链接:https://blog.csdn.net/bysjlwdx/
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']
def random_captcha_text(char_set=number + alphabet + ALPHABET, captcha_size=4):
 '''
 :param char_set: 验证码的候选集
 :param captcha_size: 生成验证码中元素个数
 :return: 返回随机挑选的captcha_size个元素组成的列表
 '''
 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():
 '''
 把 random_captcha_text() 函数所生成列表中的元素组成字符串,
 传入到实例的方法中,生成对应的图片
 :return: captcha_text为标签,captcha_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
if __name__ == '__main__':
 text, image = gen_captcha_text_and_image()
 # 显示验证码图片
 fig = plt.figure()
 fig.text(0.1, 0.9, text, ha='center', va='center')
 plt.imshow(image)
 plt.show()

运行结果:

Python3.6验证码随机生成

运行效果

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/36578.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信