以前写过一个刷校内网的人气的工具,Java的(以后再也不行Java程序了),里面用到了验证码识别,那段代码不是我自己写的:-) 校内的验证是完全单色没有任何干挠的验证码,识别起来比较容易,不过从那段代码中可以看到基本的验证码识别方式。这几天在写一个程序的时候需要识别验证码,因为程序是Python写的自然打算用Python进行验证码的识别。 以前没用Python处理过图像,不太了解PIL(Python Image Library)的用法,这几天看了看PIL,发...
废话不多说了,直接给大家贴代码了。import urllib import urllib2 import cookielib def getImg(picurl): request for random_code picture and cookie pic = opener.open(picurl).read() with open(./verifyImg.jpg,wb) as emptyPic: emptyPic.write(pic) def verifyImg(picpath): TODO pass def login(coo): loginUrl = http://jwxt.wust.edu.cn/whkjdx/Logon.do?method=logon data = {USERNAME:*****, PASSWORD:*****, RA...
本文实例讲述了Python使用PIL库实现验证码图片的方法。分享给大家供大家参考,具体如下: 现在的网页中,为了防止机器人提交表单,图片验证码是很常见的应对手段之一。这里就不详细介绍了,相信大家都遇到过。 现在就给出用Python的PIL库实现验证码图片的代码。代码中有详细注释。#!/usr/bin/env python #coding=utf-8 import random from PIL import Image, ImageDraw, ImageFont, ImageFilter _letter_cases = "abcdefghjkmnpqrs...
本文实例为大家分享了简单的Python登录验证,供大家参考,具体内容如下 编写登录接口 要求:1、输入用户名密码2、认证成功后显示欢迎信息3、输错三次后锁定#coding=utf-8 __author__ = wangwcimport sys,os count = 0 locked = 0 mark_user = 0 mark_passwd = 0 #获取路径 def cur_file_dir():path = sys.path[0]if os.path.isdir(path):return pathelif os.path.isfile(path):return os.path.dirname(path) #print (cur_file_dir(...
本文主要介绍我在利用Django写文章时,采用的注册方法。首先说一下整体逻辑思路:?处理用户注册数据,?产生token,生成验证URL,?发送验证邮件,?用户登录网址,进行验证,?验证处理。具体步骤:1、添加用户在Django中自带的User表中,有一个is_active字段,默认值是True,即用户填完表单提交之后,就可以进行登录。我们这里首先将is_acitve字段设为False,也就是说,必须经过后续的邮箱验证,才能够正常登录。部分代码:if reques...
加入cas的好处 cas是什么东西就不多说了,简而言之就是单点登陆系统,一处登陆,全网有权限的系统均可以访问. 一次登陆,多个系统互通 cas一般均放置在内网,加入cas验证则必须要求用户走vpn访问,提高安全性; cas可和域控等系统结合,密码定时过期; 基本认证统一走cas控制,减去开帐号等麻烦事; django 如何使用cas验证 django 的好处就是支持的包多,网上已经有大神做好的相关的app,直接下载、安装就可以了。 我们要做的就是下载、解压拷贝...
代码如下:# -*- coding: utf-8 -*-import Image,ImageDraw,ImageFontimport randomimport math, string class RandomChar(): """用于随机生成汉字""" @staticmethod def Unicode(): val = random.randint(0x4E00, 0x9FBF) return unichr(val) @staticmethod def GB2312(): head = random.randint(0xB0, 0xCF) body = random.randint(0xA, 0xF) tail = random.randint(0, 0xF) val = ( head << 8 ) | (bod...
对于目前众多的验证码解决方案来说,这个API有着中国电信这个重量级的运营商为靠山,应该是比较靠谱的了,而且还是免费的。使用方式:#定义app_id和app_secretr = RandCode(app_id, app_secret)#支持平台的两种接口方式#方式1:自定义接收验证码的回调URLr.send(phone number, http://yourdomain/rand_code.php, 3)#方式2:自定义验证码内容r.send_sms(phone number, 189189)#!/usr/bin/env python # coding: utf-8 from time i...
python代码 代码如下: # -*- coding: utf-8 -*- import Image,ImageDraw,ImageFont import random import math, string class RandomChar(): """用于随机生成汉字""" @staticmethod def Unicode(): val = random.randint(0x4E00, 0x9FBF) return unichr(val) @staticmethod def GB2312(): head = random.randint(0xB0, 0xCF) body = random.randint(0xA, 0xF) tail = random.randint(0, 0xF) val = ( head << 8 ) | (body << 4...
下面是一个实战项目的结果。 代码如下:#coding: utf-8 import Image,ImageDraw,ImageFont,os,string,random,ImageFilter def initChars(): """ 允许的字符集合,初始集合为数字、大小写字母 usage: initChars() param: None return: list 返回允许的字符集和 for: picChecker类初始字符集合 todo: Nothing """ nums = [str(i) for i in range(10)] letterCase = [ a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u...
首先来分析下需求,web程序后台需要认证,后台页面包含多个页面,最普通的方法就是为每个url添加认证,但是这样就需要每个每个绑定url的后台函数都需要添加类似或者相同的代码,但是这样做代码就过度冗余,而且不利于扩展. 接下来我们先不谈及装饰器,我们都知道Python是个很强大的语言,她可以将函数当做参数传递给函数,最简单的:def p():print Hello,worlddef funcfactor(func):print calling function named, func.__name__func()print ...
早听说用python做网络爬虫非常方便,正好这几天单位也有这样的需求,需要登陆XX网站下载部分文档,于是自己亲身试验了一番,效果还不错。 本例所登录的某网站需要提供用户名,密码和验证码,在此使用了python的urllib2直接登录网站并处理网站的Cookie。 Cookie的工作原理: Cookie由服务端生成,然后发送给浏览器,浏览器会将Cookie保存在某个目录下的文本文件中。在下次请求同一网站时,会发送该Cookie给服务器,这样服务器就知道...
python是不带静态检查的动态语言,有时候需要在调用函数时保证参数合法。检查参数合法性是一个显著的切面场景,各个函数都可能有这个需求。但另一方面,参数合法性是不是应该由调用方来保证比较好也是一个需要结合实际才能回答的问题,总之双方约定好,不要都不检查或者都检查就可以了。下面这个模块用于在函数上使用装饰器进行参数的合法性验证。 你可以直接执行这个模块进行测试,如果完全没有输出则表示通过。你也可以找到几个以...
本文实例讲述了Python3通过Luhn算法快速验证信用卡卡号的方法。分享给大家供大家参考。具体分析如下: Python3通过Luhn算法快速验证信用卡卡号,python用起来就是爽,很简单的三行代码就可以验证信用卡卡号是否有效def luhn_check(num): Number - List of reversed digits digits = [int(x) for x in reversed(str(num))]check_sum = sum(digits[::2]) + sum((dig//10 + dig%10) for dig in [2*el for el in digits[1::2]])return ...
本文实例讲述了python使用pil生成图片验证码的方法。分享给大家供大家参考。具体实现方法如下:# -*- coding: utf-8 -*- #导入三个模块 import Image,ImageDraw,ImageFont import random import math 基本功能 #图片宽度 width = 100 #图片高度 height = 40 #背景颜色 bgcolor = (255,255,255) #生成背景图片 image = Image.new(RGB,(width,height),bgcolor) #加载字体 font = ImageFont.truetype(FreeSans.ttf,30) #字体颜色 font...