返回顶部
首页 > 资讯 > 后端开发 > Python >Python实现随机生成图片验证码详解
  • 870
分享到

Python实现随机生成图片验证码详解

2024-04-02 19:04:59 870人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

使用python生成一个图片验证码,随机的,可以由于验证人机和别的啊,很方便很简单 导入模块 import random from PIL import Image,ImageFon

使用python生成一个图片验证码,随机的,可以由于验证人机和别的啊,很方便很简单

导入模块

import random
from 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 python3
import random
from 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实现随机生成图片验证码详解的详细内容,更多关于Python图片验证码的资料请关注编程网其它相关文章!

--结束END--

本文标题: Python实现随机生成图片验证码详解

本文链接: https://lsjlt.com/news/162979.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python实现随机生成图片验证码详解
    使用python生成一个图片验证码,随机的,可以由于验证人机和别的啊,很方便很简单 导入模块 import random from PIL import Image,ImageFon...
    99+
    2024-04-02
  • java实现随机验证码图片生成
    本文实例为大家分享了java生成随机验证码图片的具体代码,供大家参考,具体内容如下 1.controller @GetMapping(value = "/getRan...
    99+
    2024-04-02
  • python生成随机图形验证码详解
    使用python生成随机图片验证码,需要使用pillow模块 1.安装pillow模块 pip install pillow 2.pillow模块的基本使用 1.创建图片 from PIL imp...
    99+
    2022-06-04
    验证码 详解 图形
  • 怎么用Python实现随机生成图片验证码
    本篇内容主要讲解“怎么用Python实现随机生成图片验证码”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Python实现随机生成图片验证码”吧!导入模块import random...
    99+
    2023-06-26
  • java怎么实现随机验证码图片生成
    这篇文章主要介绍“java怎么实现随机验证码图片生成”,在日常操作中,相信很多人在java怎么实现随机验证码图片生成问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java怎么实现随机验证码图片生成”的疑惑有所...
    99+
    2023-06-25
  • 利用Python生成随机验证码详解
    目录1.先搞环境2.开始码代码3. 加干扰4. 加入更多的干扰5. 验证码 + 随机字符6. 验证码保存本地(选)最近感觉被大数据定义成机器人了,随便看个网页都跳验证码。 怎么用p...
    99+
    2024-04-02
  • python生成随机验证码
    一、生成随机验证码(纯数字及字母加数字): import random import string checkcod='' for i in range(5): #5位验证码 ''' #纯数字验证码 #随机值1-...
    99+
    2023-01-31
    验证码 python
  • javaWeb如何实现随机图片验证码详解
    实现步骤 1:Java后台生成一张随机数字/字母/汉字验证码的图片。 2:存入redis或者session。 3:用户输入验证码跟redis取出数据做比对。 图片生成工具类 ...
    99+
    2024-04-02
  • Android实现随机生成验证码
    本文实例为大家分享了Android验证码的随机生成代码,供大家参考,具体内容如下 Code.java package com.example.myapp; import and...
    99+
    2024-04-02
  • JS实现随机生成验证码
    本文实例为大家分享了JS实现随机生成验证码的具体代码,供大家参考,具体内容如下 <!DOCTYPE html> <html> <head>...
    99+
    2024-04-02
  • Vue实现图片验证码生成
    图片验证码主要用于注册,登录等提交场景中,目的是防止脚本进行批量注册、登录、灌水,相比不带图片验证的安全度有所提高,不过目前也有自动识别图片验证码的程序出现,基本都是付费识别,随之又...
    99+
    2024-04-02
  • JavaScript实现随机生成验证码及校验
    本文实例为大家分享了JavaScript实现随机生成验证码及校验的具体代码,供大家参考,具体内容如下 输入验证码(区分大小写)点击确认,进行校验。出错就弹框提示 点击 看不清 重新随...
    99+
    2024-04-02
  • python图片验证码生成代码
    本文实例为大家分享了python图片验证码实现代码,供大家参考,具体内容如下 #!/usr/bin/env python # -*- coding: UTF-8 -*- import random ...
    99+
    2022-06-04
    验证码 代码 图片
  • Android随机生成验证码
    Android随机生成验证码,Android利用随机数绘制不规则的验证码,加强用户登录或者注册的安全性。 具体思路如下: 在一块固定宽高的画布上,画上固定个数的随机数字和字母,...
    99+
    2022-06-06
    验证码 Android
  • java随机验证码生成实现实例代码
    java随机验证码生成实现实例代码摘要: 在项目中有很多情况下都需要使用到随机验证码,这里提供一个java的随机验证码生成方案,可以指定难度,生成的验证码可以很方便的和其他组件搭配之前要使用一个生成随机验证码的功能,在网上找了一下,有很多的...
    99+
    2023-05-31
    java 随机 验证码
  • javaWeb怎么实现随机图片验证码
    这篇文章给大家分享的是有关javaWeb怎么实现随机图片验证码的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。实现步骤Java后台生成一张随机数字/字母/汉字验证码的图片。存入redis或者session。用户输入...
    99+
    2023-06-14
  • Android自定义View绘制随机生成图片验证码
    本篇文章讲的是Android自定义View之随机生成图片验证码,开发中我们会经常需要随机生成图片验证码,但是这个是其次,主要还是想总结一些自定义View的开发过程以及一些需要注...
    99+
    2022-06-06
    view 图片 验证码 Android
  • android端实现验证码随机生成功能
    本文实例为大家分享了android端生成随机验证码的具体代码,供大家参考,具体内容如下package com.nobeg.util; import java.util.Random; import android.graphics.Bi...
    99+
    2023-05-30
    android 验证码 roi
  • React tsx生成随机验证码
    React tsx 生成随机验证码,供大家参考,具体内容如下 最近开发React 使用tsx编写,没有找到什么好的随机生成验证码的插件,自己就手撸了一个,废话不多话,直接上代码。 t...
    99+
    2024-04-02
  • Vue如何实现图片验证码生成
    这篇文章主要介绍“Vue如何实现图片验证码生成”,在日常操作中,相信很多人在Vue如何实现图片验证码生成问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Vue如何实现图片验证码生成”的疑惑有所帮助!接下来,请跟...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作