python实现验证码与进度条

Python生成验证码【两种方法】 5、实验题目:生成验证码 验证码一般是包括一些随机产生的数字或符号,请实现随机生成一组6位验证码的功能。 每个字符可以是大写字母、小写字母或数字,有且只能是这三种类型中的一种。 1.使用range() 实现思想: 1.需要引入random库 2.将生成验证码功能写成函数,可以生成任意位数的验证码 3.通过ASCLL的值转换为大小写字母 4.随机抽取 import random # 用range() def code(len): code_list = [] for i in range(10 阅读详情

1.简单验证码

# python 实现验证码
#1

import random
n = 5

lis = list()
count = 0
while  count<n:
    count+=1
    lis.append(str(random.randint(0,9)))
    lis.append(chr(random.randint(65,90)))
    lis.append(chr(random.randint(97,122)))

lis2 = random.sample(lis,n)
print(lis2)

lis1 = ''.join(lis2)
print(lis1)
# for i in lis2:
#     print(i,end=' ')
#2
def get_verified(lenth):
    code = ''
    for i in range(lenth):
        num = str(random.randint(0,9))
        alp = chr(random.randint(97,122))
        ATP = chr(random.randint(65,90))
        code+=str(chr(random.randint(65,90)))
    return code
print(get_verified(5))

2.高级验证码

# 遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
# 寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
from PIL import Image,ImageDraw,ImageFont
import random
from io import BytesIO,StringIO
"""
BytesIO,  能够存储数据 并以二进制的格式再返回给你
StringIO  能够存储数据 并以字符串的格式再返回给你
"""
"""
Image,  产生图片的
ImageDraw,  产生画笔的
ImageFont  控制字体样式
"""
def get_random():
    return random.randint(0,255),random.randint(0,255),random.randint(0,255)
def get_code(request):
    # 推到思路1:直接拿后端现成的图片 二进制模式打开发送
    # with open(r'D:\上海Python11期视频\python11期视频\BBS\avatar\u205777803476556477fm26gp0.jpg','rb') as f:
    #     data = f.read()
    # return HttpResponse(data)
# 图片验证码相关
def get_code(request):

    # 推导思路2:利用模块产生图片  再发送给前端 pillow
    # img_obj = Image.new('RGB',(310,35),'green')  # 生成了一个图片对象
    # img_obj = Image.new('RGB',(310,35),get_random())  # 生成了一个图片对象
    # # 先利用文件操作将图片对象写入文件中
    # with open('xxx.png','wb') as f:
    #     img_obj.save(f,'png')
    # # 再利用文件操作将图片以二进制形式读取出来发送
    # with open('xxx.png','rb') as f:
    #     data = f.read()
    # return HttpResponse(data)
# 图片验证码相关
def get_code(request):

    # 推到思路3:不再利用文件存取数据  借助于内存管理器
    # img_obj = Image.new('RGB',(310,35),get_random())
    # io_obj = BytesIO()  # 生成一个内存管理器对象
    # img_obj.save(io_obj,'png')  # 你可以将io_obj当成文件句柄f
    # return HttpResponse(io_obj.getvalue())  # 以二进制的方式取出数据
# 图片验证码相关
# 遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
# 寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
def get_code(request):
    # 推到思路4(终极步骤)  图片上写字
    img_obj = Image.new('RGB',(310,35),get_random())
    img_draw = ImageDraw.Draw(img_obj)  # 生成一个画笔对象
    img_font = ImageFont.truetype('static/font/111.ttf',30)  # 字体的样式
    """
    所有的字体样式都是由.ttf结尾的文件控制的
    """
    # 随机生成验证码  a~z  A~Z  0~9
    code = ''
    for i in range(5):
        random_upper = chr(random.randint(65,90))
        random_lower = chr(random.randint(97,122))
        random_int = str(random.randint(0,9))
        temp = random.choice([random_upper,random_lower,random_int])
        # 将产生的随机字符写到图片上
        img_draw.text((i*45+45,0),temp,get_random(),img_font)
        code += temp
    print(code)
    # 将随机验证码存储取来  以便其他函数调用
    request.session['code'] = code

    io_obj = BytesIO()
    img_obj.save(io_obj,'png')
    return HttpResponse(io_obj.getvalue())

3.进度条

import time
satat = time.time()
fac = 10

for i in range(fac+1):
    print(f'\r{(i*10):^5}% [{i*"*"} {(fac-i)*"-"}]time:{(time.time()-satat):.3f}',end='')
    time.sleep(1)
python制作网易账号余额查询工具 制作一个自动登录,手动滑动验证码,自动读取余额的工具,完成后再做验证码识别的部分。 先展示一下完成的结果。 github地址:https://github.com/TechKuki/NeteastBalance实现自动登录python自带的tkinter框架没有能够支持展示网页的控件,查询到python开发gui程序还可以使用wxPython,PyQt,PySide等。 这里我们使用PyQ 阅读详情

相关推荐

python:实现验证码(附完整源码)

python:实现验证码(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 877

python爬虫代码-Python爬虫教程:200行代码实现一个滑动验证码

Python爬虫教程:教你用200行代码实现一个滑动验证码做网络爬虫的同学肯定见过各种各样的验证码,比较高级的有滑动、点选等样式,看起来好像挺复杂的,但实际上它们的核心原理还是还是很清晰的,本文章大致说明下这些验证码的原理以及带大家实现一个滑动验证码。实际上这类验证码的校验是分为两个步骤的:1.第一步就是前端的校验。一般来说,登录注册页面在点击提交的时候都会伴随着一个表单提交,在表单提交的时候会有...

q6q6q的专栏 1463

Python:打造自己的验证码(附详细源码)

调用该函数后,会生成一个包含随机字符的字符串和一张验证码图片,并将文件名和字符串一起返回。在代码最后,我们对该函数进行了一个简单的测试,输出了生成的验证码和保存的文件路径。通过验证码的使用,可以有效地防范恶意攻击和恶意访问,保护用户的账号和隐私信息。通过这个示例,我们可以看出,Python 的 Pillow 库和 random、string 模块非常强大,可以帮助我们快速生成和处理各种类型的数据。同时,由于每次生成的验证码都是不同的,我们还可以将其与用户输入的验证码进行比较,从而验证用户的身份。

持续更新 1248

Python生成验证码

验证码一般是包括一些随机产生的数字或符号,请实现随机生成一组6位验证码的功能。每个字符可以是大写字母、小写字母或数字,有且只能是这三种类型中的一种。

h1552347193的博客 1327

python实现验证码功能

首先需pip install Pillow==3.4.1,然后自行配置应用中的urls和views,资源为验证码的源码及显示的html网页,已实现看不清换一张功能

Python实现随机生成验证码

Python中PIL模块实现的随机生成验证码图片用于网站登录验证.

通过python实现打印进度条和生成验证码操作

【代码】通过python实现打印进度条操作。

m0_60274784的博客 332

WPF 解决listview值更改时页面没有刷新

WPF 解决listview值更改时页面没有刷新。

weixin_52475977的博客 1386

python实现随机验证码图片生成

最近在学习 深度学习实现验证码模型训练,因为需要大量的验证码图片,所以要自动生成验证码图片,效果图: 首先安装相应的库包: #验证码生成库 pip install captcha #进度条显示库,显示图片生成进度 pip install tqdm code: import numpy as np import random import sys from PIL import Image fr...

ayangann915的博客 1777

智能车图像处理去畸变+逆透视教程

图像处理,去畸变与逆透视整合

wu58430的博客 1万+

IEEE论文接收后,收到Proof邮件别慌!手把手教你48小时内搞定校样(附详细截图)

本文详细解析了IEEE论文接收后Proof校样的全流程,从邮件关键信息解码到精准修改标注,提供48小时内高效完成校样的实战指南。涵盖登录技巧、文件验证、修改标注黄金法则及九宫格检查清单,帮助作者避免常见错误,确保论文顺利发表。

weixin_30652491的博客 564

第一阶段:Python开发基础 day16 课后作业--有参函数的使用

目录 1.给定验证码长度n,生成随机验证码,验证码由数字、字母组成(参考chr()内置方法) 2.打印进度条,进度条图形如下图所示,以下代码为参考代码 博客地址 1.给定验证码长度n,生成随机验证码,验证码由数字、字母组成(参考chr()内置方法) 程序代码如下: impo...

banlie2891的博客 192

UE5网络同步优化:GetLifetimeReplicatedProps高级应用指南

本文深入探讨了UE5中GetLifetimeReplicatedProps函数的高级应用与优化策略。文章超越了基础变量注册,重点阐述了如何通过精细的复制条件控制、频率管理及分层复制机制,构建高效的数据同步通道,从而优化网络带宽与游戏性能,是提升多人游戏体验的实用指南。

weixin_29007243的博客 535

python有哪些函数怎么用_Python有参函数的使用

1.给定验证码长度n,生成随机验证码,验证码由数字、字母组成(参考chr()内置方法)程序代码如下:import randomdef create_check_code(n):check_code = '' # 创建一个变量用以接收随机出来的验证码字符for i in range(n):asc_num = random.randint(48, 57) # 随机获取一个数字的ascii码asc_s...

weixin_39604557的博客 192

告别C盘空间焦虑!Miniforge环境路径精准配置全攻略

本文深入解析Miniforge虚拟环境默认占用C盘空间的根本原因,即未正确配置`.condarc`文件中的`envs_dirs`路径优先级。通过详细的诊断步骤与配置命令,指导用户将环境路径精准迁移至指定磁盘(如D盘),并分享禁用自动激活、使用`--prefix`参数等高阶技巧,帮助开发者彻底告别C盘空间焦虑,实现虚拟环境的整洁与可控管理。

weixin_28831399的博客 239

【ComfyUI】VideoRefusion 动态替换视频背景

本文介绍了一个基于ComfyUI的视频背景替换工作流,通过WanVAE和WanTextEncoder核心模型实现人物与背景的智能分离与替换。工作流包含9个关键流程阶段,涉及视频采样、图像增强等节点操作,可生成风格统一、动作自然的视频效果。该技术适用于虚拟人物创作、短视频特效、产品广告等场景,支持个性化定制开发。相关资源可参考文末提供的ComfyUI教程和AIGC工具平台开发指南。(149字)

Mr数据杨 2194

8.9 每日课后作业系列之进度条 and 验证码

# 今日作业:# 1.掌握课堂案例:验证码import randomimport timesq# def make_code(i):# res = ""# for j in range(i):# # 随机0到9# num = str(random.randint(0,9))# c = chr(random.randint(6...

weixin_30558305的博客 87

KubeVela入门到精通-K8S多集群交付

KubeVela是一个功能强大、易于使用、高度可扩展的应用交付与管理平台。它基于Kubernetes和OAM 技术构建,通过开放应用模型(OAM)来作为顶层的抽像,提供了声明式部署、多集群/混合环境支 持、插件与扩展性、中心化管控以及易于使用与可观测性等特点。

小杨同学的博客 1271

8.15 课后作业

8.15 课后作业 给定验证码长度n,生成随机验证码,验证码由数字、字母组成(参考chr()内置方法) import random def yanzhengma(n): for i in range(n): s = random.randint(1, 3) if s == 1: print(chr(random.rand...

weixin_30660027的博客 197

AD22里面封装修改后,同步到PCB图里面

【摘要】本文介绍了Altium Designer 22中同步更新元件封装的三种方法:1)从PCB库直接更新:在PCB库面板右键选择"Update PCB With[封装名]";2)通过原理图标准更新:使用Design->Update PCB Document菜单;3)在PCB编辑器中验证更新:通过Tools->Update From PCB Libraries菜单。所有方法最终都需通过ECO(工程变更订单)确认变更,建议执行前仔细核对变更内容。这些方法适用于AD22及早期版本

whm128的博客 1766

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

python编有趣的小程序_Python全栈开发-有趣的小程序

Python全栈开发-有趣的小程序进度条的打印import sys,timefor i in range(20):sys.stdout.write('$') #stdout是标准输出的意思,在一般电脑上,stdout的标准输出指的是计算机屏幕。sys.stdout.flush()time.sleep(0.1)单线程下的并发运算:import timedef consumer(name):...

weixin_39921504的博客 59

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

实验名称:字符串练习

这次实验中我学习到了有关random模块以及string模块的相关知识,拓宽了我的知识面。此外,将已经学过的知识学以致用,这加深了我对代码的理解以及运用,我也从中得到了一些新的启发。对格式化输出也有更好的掌握,敲代码是一个日渐熟练的过程,虽然过程有些艰辛,但学到现在乐趣也颇多,我以后一定会更加努力学习。4.进度条一般以图形的方式显示已完成任务量和未完成任务量,并以动态文字的方式显示 任务的完成度。编写代码,实现具有过滤敏感词功能的程序。6.使用字符串的方法,将字符串的每一个字符放入列表中。

m0_60024689的博客 1663

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

python下载百度网盘文件-python通过百度云api的方式上传或下载文件

2、编写一个脚本实现长传图片,命名为:pic_upload.pyimport progressbarfrom baidupcsapi import PCSclass ProgressBar():def __init__(self):self.first_call = Truedef __call__(self, *args, **kwargs):if self.first_call:self.wi...

weixin_37988176的博客 3041
上一篇: python format格式化函数用法
下一篇: 如何在Python中表示一个对象
Python热爱者
博客等级 码龄7年 3059粉丝 1330原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值