青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

misschuer

常用鏈接

統計

積分與排名

百事通

最新評論

python3的一些包說明


對于ubuntu 12.04LST 安裝PIL (https://github.com/sloonz/pil-py3k)
需要: 
說明(http://pillow.readthedocs.org/en/latest/installation.html#linux-installation)
libjpeg8
libjpeg8-dev
libfreetype6
libfreetype6-dev 
zlib1g-dev 
libtiff4-dev
liblcms1-dev
libwebp-dev
tcl8.5-dev
tk8.5-dev

一定要等所有所需模塊裝好 并且 看下這個(http://jj.isgeek.net/2011/09/install-pil-with-jpeg-support-on-ubuntu-oneiric-64bits/)
然后再裝PIL
再貼下網上有好心人寫的 生成驗證碼的例子

#Fly web app - Verification Code
# -*- coding: utf-8 -*-
import random
from io import BytesIO
import Image, ImageDraw, ImageFont
# 特別注意 from PIL import Image 和 import Image的區別 由于PIL包都是import xxx 所以我們不能寫成from xxx import yyy
class VCode:
    def __init__(self,size=(100,30),length=4,font='',
                 font_color=(51,102,204),font_size=25,font_bg=(255,255,255),
                 line=(3,5),pointBorder = (50,47),save_type= 'JPEG',quality=100):
        """
        驗證碼生成類
        參數:
            size -  圖片高寬(width,height)
            length - 驗證碼長度
            font - 字體路徑
            font_color - 字體顏色(允許是: #FF0000 或 RGB)
            font_size - 字體大小
            font_bg - 背景顏色
            line - 干擾線 (最少,最大)
            pointBorder - 散點(越大越多,越大越少)
            save_type - 保存類型
            quality - 品質
        """
        self._size = size
        self._font = font
        self._font_color = self._str_hex(font_color)
        self._font_size = font_size
        self._length = length
        self._font_bg = self._str_hex(font_bg)
        self._save_type = save_type
        self._quality = quality
        #初始化
        self._im = None
        self._draw = None
        self._code = ''
        self._char = 'abcdefghkmnprstuvwyzABCDEFGHKLMNPRSTUVWYZ23456789'
        self._pointBorder = pointBorder
        self._line = line
    def Generate(self):
        """生成驗證碼,并返回圖像內容,和驗證碼"""
        #生成code
        random_code = self._randomCode()
        self._code =  '%s' % ''.join(random_code)
        code_str = '%s' % ' '.join(random_code)
        #圖像對象
        self._im = Image.new('RGB',self._size,self._font_bg)
        self._draw = ImageDraw.ImageDraw(self._im)
        imFont = ImageFont.truetype(self._font,self._font_size)
        w,h = imFont.getsize(self._code)
        xy = ((self._size[0]-w)/2,(self._size[1]-h)/2)
        self._draw.text(xy,code_str,fill=self._font_color,font=imFont)
        #畫干擾點
        self._createPoints()
        #畫干擾線
        self._createLines()
        #file對象
        fp = BytesIO()
        #保存圖像
        self._im.save(fp,self._save_type,quality=self._quality)
        return fp.getvalue(),self._code
    def _str_hex(self,color):
        """轉換顏色值為RGB"""
        if type(color) is str:
            color = color.replace('#','')
            temp_color = (int(color[0:2],16),int(color[2:4],16),int(color[4:6],16))
        else:
            temp_color = color
        return temp_color
    def _randomCode(self):
        """生成隨機code """
        return random.sample(self._char,self._length)
    def _createPoints(self):
        """畫點"""
        for x in range(self._size[0]):
            for y in range(self._size[1]):
                flag = random.randint(0, self._pointBorder[0])
                if flag > self._pointBorder[1]:
                    self._draw.point((x, y), fill = self._randomRGB())
                del flag
    def _createLines(self):
        """畫干擾線"""
        lineNum = random.randint(self._line[0], self._line[1])
        for i in range(lineNum):
            begin = (random.randint(0, self._size[0]),
                     random.randint(0, self._size[1])
            )
            end = (random.randint(0, self._size[0]),
                   random.randint(0, self._size[1])
            )
            self._draw.line([begin, end], fill = self._randomRGB())
    def _randomRGB(self):
        """隨機生成RGB"""
        return (random.randint(0,255),random.randint(0,255),random.randint(0,255))
if __name__ == "__main__":
verification = VCode(font='font/ARLRDBD.TTF')
im, code = verification.Generate()
with open("test.jpeg", "wb") as f:
f.write(im)
print(code)


用tornado  render html是 html里的python 代碼


Tornado的模板支持控制語句和表達語句,控制語句是使用 {% 和 %} 包起來的,例如 {% if len(items) > 2 %} 。表達語句是使用 {{ 和 }} 包起來的,例如 {{ items[0] }} 。

控制語句和對應的Python語句的格式基本完全相同。我們支持 if 、 for 、 while 和 try ,這些語句邏輯結束的位置需要用 {% end %} 做標記


圖片內容無需保存到.jpeg中, 具體參考下面
http://en.wikipedia.org/wiki/Data_URI_scheme#HTML


是用mako來在html嵌套python代碼
http://blog.csdn.net/luanruisong/article/details/9414635

posted on 2013-11-20 11:44 此最相思 閱讀(333) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久婷婷色综合| 国产精品日韩久久久| 女主播福利一区| 久久精品中文| 久久人人97超碰精品888| 久久精品国产清自在天天线| 久久成人精品无人区| 久久综合网络一区二区| 欧美a级一区二区| 亚洲人体影院| 亚洲韩国日本中文字幕| 一区二区精品| 久久精品亚洲一区| 欧美日韩国产精品自在自线| 欧美系列亚洲系列| 国产亚洲精品一区二555| 在线观看亚洲一区| 欧美日韩成人综合在线一区二区| 欧美日韩mp4| 国产精品一区二区黑丝| 一区二区三区在线看| 亚洲日本精品国产第一区| 亚洲午夜精品福利| 久久综合色播五月| 一区二区三区日韩精品| 久久久久综合网| 国产精品久久久久久妇女6080| 黄色精品一区| 亚洲特黄一级片| 美女视频黄a大片欧美| 一区二区三区久久| 欧美mv日韩mv国产网站app| 国产精品成人av性教育| 在线看不卡av| 久久av资源网站| 99这里只有精品| 猫咪成人在线观看| 国产婷婷色综合av蜜臀av| 一本久道综合久久精品| 欧美77777| 小黄鸭精品密入口导航| 嫩草国产精品入口| 在线看成人片| 你懂的国产精品| 欧美一区二区精美| 欧美日韩一区二区三区四区在线观看| 亚洲第一在线视频| 蜜桃久久av| 久久麻豆一区二区| 激情一区二区| 美女精品在线观看| 久久亚洲风情| 亚洲国产欧美一区二区三区久久| 久久久国产成人精品| 午夜精品免费在线| 国产精品一区二区在线观看网站 | 欧美成人中文字幕| 欧美一级成年大片在线观看| 欧美日韩国产成人高清视频| 99re6热只有精品免费观看| 欧美激情视频网站| 免费亚洲一区二区| 亚洲精品国产精品国自产观看浪潮 | 六月婷婷一区| 亚洲高清视频在线观看| 老司机精品视频一区二区三区| 亚洲综合另类| 亚洲一区二区三区免费视频| 亚洲欧洲在线看| 欧美激情1区2区| 在线亚洲一区观看| 制服诱惑一区二区| 国产区欧美区日韩区| 久久黄色级2电影| 久久精品色图| 亚洲国产成人久久综合一区| 欧美成人精品福利| 欧美激情性爽国产精品17p| 日韩午夜av| 亚洲午夜精品| 一区精品久久| 亚洲精品资源美女情侣酒店| 国产精品嫩草影院一区二区| 久久免费视频在线| 欧美大片18| 亚洲欧美久久| 久久色在线播放| 一本综合精品| 亚洲欧美不卡| 91久久综合| 亚洲自拍16p| 永久免费精品影视网站| 亚洲精品1区2区| 国产日韩欧美二区| 欧美福利影院| 国产精品免费在线| 欧美激情bt| 国产精品久久99| 欧美xart系列在线观看| 欧美日韩一区二区高清| 欧美影院午夜播放| 欧美国产精品专区| 久久福利资源站| 欧美激情网站在线观看| 久久精品91久久香蕉加勒比| 欧美成人精精品一区二区频| 欧美一区二区三区日韩视频| 欧美成人一区二区三区在线观看| 欧美亚洲视频在线看网址| 欧美成人午夜免费视在线看片| 亚洲欧美国产精品桃花| 久久综合九色综合欧美狠狠| 午夜精彩国产免费不卡不顿大片| 牛牛国产精品| 欧美99久久| 激情六月婷婷久久| 午夜视频一区在线观看| 亚洲一区在线视频| 欧美激情网站在线观看| 免费成人网www| 好男人免费精品视频| 亚洲欧美bt| 午夜精品一区二区三区电影天堂| 欧美国产亚洲另类动漫| 欧美成人午夜免费视在线看片| 国产一区二区在线观看免费播放| 亚洲美女av网站| 一本色道久久综合精品竹菊| 免费日韩av| 欧美91福利在线观看| 一区二区视频免费在线观看| 久久尤物视频| 亚洲午夜在线| 一本久久知道综合久久| 欧美激情综合在线| 亚洲黄色大片| 日韩亚洲欧美成人一区| 欧美激情国产精品| 亚洲欧洲免费视频| 日韩一本二本av| 欧美日韩精品综合| 99国产麻豆精品| 亚洲影院污污.| 国产精品网站在线| 欧美亚洲视频一区二区| 久久一二三四| 亚洲黄色免费电影| 欧美韩日一区二区三区| 亚洲精品影视在线观看| 亚洲一区精品电影| 国产精品性做久久久久久| 欧美在线一级va免费观看| 久久夜色精品国产欧美乱| 怡红院精品视频| 嫩草国产精品入口| 亚洲国产综合91精品麻豆| 一本色道久久综合亚洲精品小说| 欧美日韩亚洲一区二区三区在线观看| 99热这里只有精品8| 午夜视频一区二区| 国际精品欧美精品| 欧美国产日产韩国视频| 亚洲私拍自拍| 欧美h视频在线| aa日韩免费精品视频一| 欧美视频一区二区三区在线观看| 亚洲欧美日韩精品久久久| 久久亚洲欧美| 亚洲美女中文字幕| 国产精品久久午夜| 久久另类ts人妖一区二区| 亚洲乱码国产乱码精品精| 欧美一区二区在线播放| 最新国产拍偷乱拍精品| 国产精品久久久久久久电影| 欧美在线首页| 亚洲视频精品在线| 欧美99在线视频观看| 亚洲直播在线一区| 亚洲二区免费| 国产日韩精品视频一区二区三区| 老司机午夜精品视频在线观看| 亚洲理伦电影| 欧美激情按摩| 久久一二三国产| 亚洲欧美大片| 日韩视频在线免费观看| 国内揄拍国内精品久久| 国产精品每日更新| 欧美另类女人| 久久久久久免费| 亚洲欧美日韩人成在线播放| 亚洲国产精品久久久久| 美女爽到呻吟久久久久| 欧美中文字幕久久| 亚洲一区免费网站| 99re热这里只有精品免费视频| 在线观看91久久久久久| 国产亚洲一本大道中文在线| 国产精品免费一区二区三区观看|