python之验证码生成(gvcode与captcha)
今天向大家总结一下python在做项目时用到的验证码生成工具:gvcode与captcha
gvcode
全称:graphic-verification-code
安装:
pip install gvcode
使用:
import gvcode s, v = gvcode.generate() #序列解包 s.show() #显示生成的验证码图片 print(v) #打印验证码字符串
效果:
captcha
安装:
pip install captcha
使用:
from captcha.image import ImageCaptcha from random import randint list = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'] chars = '' for i in range(4): chars += list[randint(0, 62)] image = ImageCaptcha().generate_image(chars) image.show()
效果:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
python 内置模块详解
一.random模块 随机 random() 随机小数 uninform(a,b) 随机小数 randint(a,b) 随机整数 choice() 随机选择一个 sample() 随机选择多个 shuffle() 打乱 import random from random import randint print(randint(10, 20)) # print(random.randint(10, 20))/ print(random.random())
-
对Python发送带header的http请求方法详解
简单的header import urllib2 request = urllib2.Request('http://example.com/') request.add_header('User-Agent', 'fake-client') response = urllib2.urlopen(request) print request.read() 包含较多元素的header import urllib,urllib2 url = 'http://example.com/' headers
-
python的xpath获取div标签内html内容,实现innerhtml功能的方法
python的xpath没有获取div标签内html内容的功能,也就是获取div或a标签中的innerhtml,写了个小程序实现一下: 源代码 [webadmin@centos7 csdnd4q] #162> vim /mywork/python/csdnd4q/z040.py #去掉最外层标签,保留其内的所有html标记和文本 def getinnerhtml(data): return data[data.find(">")+1:data.rfind("<
-
使用python3实现操作串口详解
通过引用serial模块包,来操作串口. 1.查看串口名称 在Linux和Windows中,串口的名字规则不太一样. 需要事先查看. Linux下的查看串口命令 root@D2:~# ls -l /dev/ttyS* crw-rw---- 1 root dialout 4, 64 Dec 26 06:53 /dev/ttyS0 crw-rw---- 1 root dialout 4, 65 Dec 26 06:41 /dev/ttyS1 crw--w---- 1 root tty 4,
-
python生成器与迭代器详解
列表生成式: 例一: a = [i+1 for i in range(10)] print(a) 输出: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 例二: L = [1, 2, 3, 4, 5] print([i*i for i in L if i>3]) 输出: [16, 25] 例三: L = [1, 2, 3, 4, 5] I = [6, 7, 8, 9, 10] print([i*a for i in L for a in I if i > 2 if a <
-
Python lxml解析HTML并用xpath获取元素的方法
代码 使用方法见注释 #-*- coding: UTF-8 -*- from lxml import etree source = u''' <div><p class="p1" data-a="1">测试数据1</p> <p class="p1" data-a="2">测试数据2</p> <p class="p1" data-a="
-
详解如何在Apache中运行Python WSGI应用
在生产环境上,一般会使用比较健壮的Web服务器,如Apache来运行我们的应用.如果我们的Web应用是采用Python开发,而且符合WSGI规范,比如基于Django,Flask等框架,那如何将其部署在Apache中呢?本文中,我们就会介绍如何使用Apache模块mod_wsgi来运行Python WSGI应用. 安装mod_wsgi 我们假设你已经有了Apache和Python环境,在Linux或者Mac上,那第一步自然是安装.在Ubuntu或Debian环境中,你可以使用apt-get命令来
-
使用python 打开文件并做匹配处理的实例
如下所示: import os import re import string file = open("data2.txt") p1 = re.compile(r"^(\d{16})\s+(\d{3})") re.compile(p1) for line in file: print(line) match1 = re.search(p1,line) #print(match1.group(0)) sCard = match1.group(1) sValue=ma
-
Python装饰器语法糖
Python装饰器语法糖代码示例 ####装饰器的固定格式 ##普通版本 def timer(func): def inner(*args,**kwargs): '''执行函数之前要做的''' ret = func(*args,**kwargs) '''执行函数之后要做的''' return ret return inner ##wraps版本 from functools import wraps def deco(func): @wraps(func) #加在最内层函数正上方 def wra
-
Python功能点实现:函数级/代码块级计时器
工程中我们常常需要对某一个函数或者一块代码计时,从而监测系统关键位置的性能.计时方法是在代码块前后分别记录当前系统时间,然后两者相减得到代码块的耗时.最简单原始的实现类似: from datetime import datetime start = datetime.now() # some code you want to measure end = datetime.now() print("Processing time for {} is: {} seconds".format
随机推荐
- 利用ganglia监控redis的最新解决方法
- ThinkPHP整合百度Ueditor图文教程
- PHP 7安装调试工具Xdebug扩展的方法教程
- PHP 分页类(模仿google)-面试题目解答
- C++ STL入门教程(3) deque双向队列使用方法
- MySQL插入emoji表情失败问题的解决方法
- js代码实现的加入收藏效果并兼容主流浏览器
- 基于Java web服务器简单实现一个Servlet容器
- Git fetch和pull的详解及区别
- knockoutjs动态加载外部的file作为component中的template数据源的实现方法
- vbs之自动安装驱动程序
- Apache 安全配置方法
- jquery隔行换色效果实现方法
- js网页实时倒计时精确到秒级
- JS匿名函数类生成方式实例分析
- Bootstrap3.0建站教程(一)之bootstrap表单元素排版
- Linux管理员手册(1)--系统概述
- 随机性死机故障分析与排除
- Android中使用findViewByMe提升组件查找效率
- DNS 系统解析过程概述