Django验证码【附源码】
一、安装依赖
CentOS
第一步:
yum install python-devel
第二步:
yum install freetype-devel libjpeg-devel libpng-devel sudo yum install libtiff-devel libjpeg-devel libzip-devel freetype-devel \ lcms2-devel libwebp-devel tcl-devel tk-devel
第三步:RPM包安装PIL
下载安装:ftp://rpmfind.net/linux/atrpms/f20-x86_64/atrpms/stable/PIL-1.1.7-10.1.fc20.x86_64.rpm
更多版本:http://rpmfind.net/linux/rpm2html/search.php?query=PIL&submit=Search+...&system=&arch=
Windows
第一步:
下载安装pip a. 下载地址:https://pypi.python.org/packages/source/p/pip/pip-7.1.2.tar.gz#md5=3823d2343d9f3aaab21cf9c917710196 b. 解压,进入目录 c. 安装,Python setup.py install 注:安装过程中可能依赖setuptools,安装过程如下: 下载文件:https://bootstrap.pypa.io/ez_setup.py 执行文件:Python ez_setup.py
第二步:
pip install Pillow
更多安装文档:http://pillow.readthedocs.org/en/latest/installation.html
二、下载源码执行
第一步:
源码下载:猛击这里
第二步:
a. 解压
b. 运行:Python manage.py runserver 127.0.0.1:8000
第三步:
浏览器访问:http://127.0.0.1:8000/login/
三、原理
1、当用户访问 http://127.0.0.1:8000/login/ 时,Python自动生成一张图片输入到页面(即:验证码),并且将图片上的文字内容保存在 Session中(即:request.session["CheckCode"] = '验证码的文字内容')。
2、用户输入用户名密码,点击登陆时:
- 首先,检查用户输入的 验证码 是否和Session中保存的验证码相同
- 然后,检查用户输入的 用户名 和 密码是否正确
工欲善其事必先利其器!!!