Python 官方文档:入门教程 => 点击学习
本篇内容主要讲解“怎么用python实现随机生成图片验证码”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Python实现随机生成图片验证码”吧!导入模块import random
本篇内容主要讲解“怎么用python实现随机生成图片验证码”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Python实现随机生成图片验证码”吧!
导入模块
import randomfrom PIL import Image,ImageFont,ImageDraw
生成随机验证码
def rndtxt(): txt_list = [] # 大写字母 txt_list.extend([i for i in range(65,90)]) # 小写字母 txt_list.extend([i for i in range(97,123)]) # 数字 txt_list.extend([i for i in range(48,57)]) return chr(txt_list[random.randint(0,len(txt_list)-1)])
作为待会生成的图片背景色和字体色
def rndbGColor(): # 背景颜色 return (random.randint(64,255),random.randint(64,255),random.randint(64,255)) def rndtxtcolor2(): # 字体颜色 return (random.randint(32,127),random.randint(32,127),random.randint(32,127))
进行生成打印验证码并以图片的形式打开,不保存图片文件,仅用于一时的验证码验证
def code(): weight = 240 hight = 60 image = Image.new('RGB',(weight,hight),(255,255,255)) font = ImageFont.truetype('msyh.ttc',36) draw = ImageDraw.Draw(image) # 填充背景颜色 for x in range(weight): for y in range(hight): draw.point((x,y),fill=rndbgcolor()) # 生成随机验证码 for T in range(4): rndtxt_2 = rndtxt() print(rndtxt_2) # 打印验证码的值 draw.text((60 * T + 10,10),rndtxt_2,font=font,fill=rndtxtcolor2()) image.show()
完整代码:
#!/usr/bin/env python3import randomfrom PIL import Image,ImageFont,ImageDraw def rndtxt(): txt_list = [] # 大写字母 txt_list.extend([i for i in range(65,90)]) # 小写字母 txt_list.extend([i for i in range(97,123)]) # 数字 txt_list.extend([i for i in range(48,57)]) return chr(txt_list[random.randint(0,len(txt_list)-1)]) def rndbgcolor(): # 背景颜色 return (random.randint(64,255),random.randint(64,255),random.randint(64,255)) def rndtxtcolor2(): # 字体颜色 return (random.randint(32,127),random.randint(32,127),random.randint(32,127)) def code(): weight = 240 hight = 60 image = Image.new('RGB',(weight,hight),(255,255,255)) font = ImageFont.truetype('msyh.ttc',36) draw = ImageDraw.Draw(image) # 填充背景颜色 for x in range(weight): for y in range(hight): draw.point((x,y),fill=rndbgcolor()) # 生成随机验证码 for T in range(4): rndtxt_2 = rndtxt() print(rndtxt_2) # 打印验证码的值 draw.text((60 * T + 10,10),rndtxt_2,font=font,fill=rndtxtcolor2()) image.show() code()
到此,相信大家对“怎么用Python实现随机生成图片验证码”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
--结束END--
本文标题: 怎么用Python实现随机生成图片验证码
本文链接: https://www.lsjlt.com/news/307413.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0