1. 程式人生 > >Django驗證碼【附源碼】

Django驗證碼【附源碼】

pmf 下載源碼 bubuko 驗證 pillow 目錄 mage ble 下載

一、安裝依賴

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中保存的驗證碼相同
  • 然後,檢查用戶輸入的 用戶名 和 密碼是否正確

Django驗證碼【附源碼】