Python实现自动生成验证码图片 - Go语言中文社区

Python实现自动生成验证码图片


一般各大网站上都会在登录的时候让用户输入验证码,用于辨别是机器人还是人,python中可以很容易的就生成随机的验证码,其中captcha库大概是最常用的,本文便是使用中Python的captcha自动生成验证码图片。

import os
import random
# captcha是用于生成验证码图片的库,可以 pip install captcha 来安装它
from captcha.image import ImageCaptcha
def random_captcha_text(num):
    # 验证码列表
    captcha_text = []
    for i in range(10): # 0-9数字
        captcha_text.append(str(i))
    for i in range(65, 91): # 对应从“A”到“Z”的ASCII码
        captcha_text.append(chr(i))
    for i in range(97, 123): #对应从“a”到“z”的ASCII码
        captcha_text.append(chr(i))
        
    # 从list中随机获取6个元素,作为一个片断返回
    example = random.sample(captcha_text, num)

    # 将列表里的片段变为字符串并返回
    verification_code = ''.join(example)
    return verification_code

# 生成字符对应的验证码
def generate_captcha_image():
    image = ImageCaptcha()
    #获得随机生成的验证码
    captcha_text = random_captcha_text(8)
    #把验证码列表转为字符串
    captcha_text = ''.join(captcha_text)
    #生成验证码

    path='E:/pycharm/验证码识别/code/test/'
    if not os.path.exists(path):
        print("目录不存在!,已自动创建" )
        os.makedirs(path)
    print("生成的验证码的图片为:", captcha_text)
    image.write(captcha_text, path + captcha_text + '.png')
if __name__ == '__main__':
    number=1000
    for i in range(number):
        generate_captcha_image()

生成的图片效果如下:(密集恐惧),代码可以修改参数,想生成几位就几位,这是八位的。

                                        

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/m0_37108612/article/details/90695681
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-05-23 20:13:39
  • 阅读 ( 338 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢