Tornado安装
Posted songdongdong6
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tornado安装相关的知识,希望对你有一定的参考价值。
?????? ?????? 如果使用的是 Linux系统 或 Mac OS X ,系统可能已经预装了 Python 。在终端命令行窗口中输入python?(或是在OS X的程序/工具/终端中)。 如果你看到这样的信息,说明 python 已经安装好了.
Python 2.7.10 (#2, Mar 31 2005, 00:05:10)[GCC 3.3 20030304 (Apple Computer, Inc. build 1666)] on darwinType "help", "copyright", "credits" or "license" for more information.>>>?
?????? 首先,从Python的官方网站www.python.org下载最新的2.7.9版本,地址如下:http://www.python.org/ftp/python/2.7.9/python-2.7.9.msi
然后,运行下载的MSI安装包,在选择安装组件的一步时,勾上所有的组件:
??? 需要注意选上pip和Add python.exe to Path(有了这个就不用手动的配置环境变量),然后一路点"Next"即可完成安装。Python会默认安装到C:Python27目录下,然后打开命令提示符(cmd)窗口,输入python后,会出现两种情况:
??? 情况一:如下图所示则表明python已经正常安装,可以使用了,键入任何python代码,回车即可执行,并得到结果。可以输入exit()并回车,退出Python交互式环境(当然直接K掉命令行窗口更省事)。
??? 这是因为Windows会根据一个Path的环境变量设定的路径去查找python.exe解释器,如果没找到,就会报上图所示错误。如果在安装时漏掉了勾选Add python.exe to Path,就需要手动把python.exe所在的路径C:Python27添加到Path中。如果你不知道怎么修改环境变量,可以把Python安装程序重新安装一遍,记得勾上Add python.exe to Path就可以了。
?????? ?????? OS: Ubuntu 13.04 64bits/CentOS
?????? ?????? Python: 2.7.4???????? ??????? 只是版本号,可根据需要自行安装python版本
????????????? Tornado: 3.1??? ????????????? 只是版本号,可根据需要自行安装Tornado版本
???????? ???????? 可以在Tornado的官网上下载Tornado的压缩包(很小,只有大约400K左右),然后进行离线安装。下载地址如下,选择项如下图所示:
http://www.tornadoweb.org/en/stable/
?????????????????? 在Linux和Windows上安装Tornado的区别不大。先进行Linux下的安装:
???????????????????? 1、对压缩包进行解压
????????????? ????????????? tar xvzf tornado-3.1.tar.gz
???????????????????? 2、进入到解压缩的tornado文件夹
?????? ?????? ????????????? cd tornado-3.1
???????????????????? 3、进行python扩展构建
?????? ?????? ????????????? python setup.py build
???????????????????? 4、tornado安装(需要用超级用户安装,不然会报权限不够)
?????? ?????? ????????????? sudo python setup.py install
?????????????? ?? linux下的tornado安装完成。windows下的安装和linux下类似。
??????????????????? 4、tornado安装
??????????????????????????? python setup.py install
?????? 当然也可以使用pip进行安装(当然前提是已经安装了pip):
?????? ?????? 下面使用《Introduction to Tornado》第一章中的例子作为Hello World,因为它相比于官网的例子多介绍了
#! /usr/bin/python # -*- coding:utf-8 -*-? import tornado.httpserver import tornado.ioloop import tornado.options import tornado.web? from tornado.options import define, options define("port", default=8000, help="run on the given port", type=int)? class IndexHandler(tornado.web.RequestHandler):??? def get(self):??????? greeting = self.get_argument(‘greeting‘, ‘Hello‘)??????? self.write(greeting + ‘, tornado!‘)? if __name__ == "__main__":??? tornado.options.parse_command_line()??? app = tornado.web.Application(handlers=[(r"/", IndexHandler)])??? http_server = tornado.httpserver.HTTPServer(app)??? http_server.listen(options.port) tornado.ioloop.IOLoop.instance().start()?
?????? 执行python hello.py启动服务器。
?????? 在本地浏览器打开http://localhost:8000/可以看到:
打开http://localhost:8000/?greeting=feng可以看到:
4-7行:导入该演示用例代码中必须的tornado的四个模块。
9-10行:从tornado.options模块用于从命令行中读取配置和解析命令,这里定义一个配置选项port,即端口。default表示默认值,help表示在帮助中显示的信息,type表示该配置参数的数据类型,如果类型匹配错误会报错。
12-15行:这是一个页面请求的Handler类,继承了web的RequestHandler类。此处只有一个get方法,该方法表示Http的Get请求。RequestHandler类有一些有用的内建方法,其中get_argument用来获取http页面请求参数,如果没有传入参数则显示为默认值(get_argument方法的第二个参数)。而另一个常用的内建方法write,它的作用是将响应的内容写到页面中。
19行:创建一个tornado应用。handlers是一个元组列表,其中每个元组的第一个元素是一个正则表达式,表示网址路由,如果其中包含捕获分组,则将匹配的内容送往RequestHandler;第二个元素是所使用的RequestHandler类用来响应操作。
21行:设置http服务器的监听端口,命令行有传入端口则监听传入端口,没有则监听默认端口。
以上是关于Tornado安装的主要内容,如果未能解决你的问题,请参考以下文章