当前位置: 首页 > news >正文

生成随机的验证码图片(Python)

文章目录

  • 一、导入包
  • 二、生成随机的验证码
  • 三、生成随机的rgb颜色
  • 四、生成图片验证码
  • 总结:


一、导入包

import random
from PIL import Image, ImageDraw, ImageFont

二、生成随机的验证码

def random_code(length=4):'''默认返回4位随机验证码,字符串'''code = ""characters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"for i in range(length):rand_char = random.choice(characters)code += rand_charreturn code

三、生成随机的rgb颜色

def random_color():"""默认返回随机颜色,元组"""return random.randrange(256), random.randrange(256), random.randrange(256)

四、生成图片验证码

def image_code(width=120, height=30, point=100, line=4):'''生成图片验证码'''code = random_code()color = random_color()image = Image.new(mode='RGB', size=(width, height), color=(0, 0, 0))  # 背景图片draw = ImageDraw.Draw(image)font = ImageFont.truetype("arial.ttf", 28)  # 字体for i, ch in enumerate(code):draw.text([i * width / 4, 0], ch, fill=color, font=font)for _ in range(point):draw.point([random.randint(0, width), random.randint(0, height)], fill=random_color())  # 画点for _ in range(line):draw.line((random.randint(0, width),random.randint(0, height),random.randint(0, width),random.randint(0, height)),fill=random_color())  # 画线image.show()# image.save(r'')

总结:

完整资源下载(上链接):https://download.csdn.net/download/SzyPy/89524730?spm=1001.2014.3001.5503

http://www.lryc.cn/news/394727.html

相关文章:

  • 0/1背包问题总结
  • 模电基础 - 放大电路的频率响应
  • Java 8 到 Java 22 新特性详解
  • 华为OD机试题-提取字符串中最长数学表达式
  • 专家指南:如何为您的电路选择理想的压敏电阻或热敏电阻
  • 基于主流SpringBoot进行JavaWeb开发的学习路线
  • 医疗机器人中的具身智能进展——自主超声策略模型的任务编码和局部探索
  • 探索人工智能在电子商务平台与游戏发行商竞争中几种应用方式
  • 【Altium】AD-网络版一个用户非人为异常占用多个License的解决方法
  • *算法训练(leetcode)第二十五天 | 134. 加油站、135. 分发糖果、860. 柠檬水找零、406. 根据身高重建队列
  • 乐鑫ESPC3 ESP8685 WiFi蓝牙模块透传程序设置教程,抛开繁琐AT指令,简单Web页面配置,即可实现透传
  • 怎么样才能为公司申请OV证书?
  • Python的`queue`模块
  • 牛客周赛 Round 50
  • 后端之路——登录校验
  • 无线网卡怎么连接台式电脑?让上网更便捷!
  • 【45 Pandas+Pyecharts | 去哪儿海南旅游攻略数据分析可视化】
  • Vue3项目给ElementPlus设置中文的两个方案
  • C#开发单实例应用程序并响应后续进程启动参数
  • STM32智能机器人导航系统教程
  • Android 15 适配之16K Page Size :为什么它会是最坑的一个适配点
  • 下载linux的吐槽
  • 【HTML入门】第四课 - 换行、分割横线和html的注释
  • 基于Hadoop平台的电信客服数据的处理与分析④项目实现:任务15:数据生产
  • Kotlin中的数据类型
  • 提高交易决策质量,Anzo Capital昂首资本只需两个交易策略
  • Ubuntu TensorRT安装
  • spring mvc学习
  • 第4集《修习止观坐禅法要》
  • IPython 日志的开关:精通 %logoff 命令的实用指南