Python的验证码
在Python中不管是做网站开发还是爬虫分析,都需要跟验证码打交道,然而Python简洁的一点就是有很多的库,可以代替我们去做验证码的生成,以及验证码的识别的操作,但是我们也是需要明白验证码的原理的。
写一个简单的程序,来生成验证码
项目思路:
1)定义一张图片
2)创建画笔
3)绘制线条和点
4)绘制验证码文字
5)定义扭曲的参数
6)使用滤镜
简而言之,就是生成一张图片,在这个图片上随机生成文字,以及一些点、线、扭曲字体等来稍做干扰。
代码如下:
# -*- coding:utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
from PIL import Image,ImageDraw,ImageFont,ImageFilter
import random # 随机模块,生成随机数
# 1.Image 处理图片
# 2.Imagedraw 处理画笔
# 3.ImageFont 处理字体
# 4.ImageFilter
# 项目思路
# 1.定义一张图片
img = Image.new("RGB",(150,50),(255,255,255))
'''
1.代表采用RGB色彩模式
2.代表图片大小
3.具体图片颜色
'''
# 2.创建画笔
draw = ImageDraw.Draw(img)
# 3.绘制线条和点
# 绘制线
for i in range(random.randint(1,10)):
dra