主页 > Python下载 > web.py官网下载
web.py官网下载
授权办法: 免费版
更新时刻: 2013-01-16 11:11:46
软件言语: 英文
软件渠道: Win2000/WinXP/Win2003/Linux/win7
软件类别: 国外软件
文件巨细: 不知道
谈论等级: ★★★★★
阅读次数: (今天:,本周:,本月:
软件简介

web.py官网下载

web.py 是一个Python 的web 结构,它简略并且功能强壮。web.py 是揭露的,不管用于什么用处都是没有约束的。


先让咱们感受一下web.py 的简略而强壮:


import web


urls = (

   '/(.*)', 'hello'

)


class hello:

   def GET(self, name):

       i = web.input(times=1)

       if not name: name = 'world'

       for c in xrange(int(i.times)): print 'Hello,', name+'!'


if __name__ == "__main__": web.run(urls, globals())

看看,上面便是一个根据web.py 的完好的Web 运用。不信?!将上面的代码保存为文件code.py,在命令行下履行python code.py。然后翻开你的阅读器,翻开地址:http://localhost:8080/RossWan,看看结 果 :)没有意外的话(当然要先装置web.py,下面会有介绍),阅读器会显现“Hello, RossWan!”。这是一个最简略的Hello world Web 运用。是不是很简略?!下面将较为具体地介绍下web.py 。Find fun :)


1. 装置


将下载得到的文件web.py-0.37.tar.gz 解压,进入解压后的文件夹,在命令行下履行:

python setup.py install

在Linux 等体系下,需求root 的权限,能够履行:

sudo python setup.py install


装置结束之后,就能够正式开端web.py 之旅…


2. URL 处理


关于一个站点来说,URL 的安排是最重要的一个部分,由于这是用户看得到的部分,并且直接影响到站点是怎么作业的,在闻名的站点如:del.icio.us ,其URLs 乃至是网页界面的一部分。而web.py 以简略的办法就能够构造出一个强壮的URLs。


在每个web.py 运用,必须先import web 模块:


import web

现在,咱们需求告知web.py URL 怎么安排,让咱们以一个简略比如开端:


urls = (

 '/', 'index'    )

在上面的比如中,榜首部分(‘/’)是一个匹配URL 的正则表达式,像/,/help/faq,/item/(\d+),等等;第二部分(‘index’)是一个类名,匹配的恳求将会被发送过去。


现在,咱们需求编写index 类。当大部人阅读网页的时分,他们都没有留意到,阅读器是经过HTTP 跟World Wide Web 通讯的。通讯的细节不太重要,但要理解一点,用户是经过URLs(例如 / 或许 /foo?f=1)来恳求web 服务器完结必定恳求的(例如 GET 或许POST)。


GET 是最遍及的办法,用来恳求一个页面。当咱们在阅读器里输入“harvard.edu” 的时分,实践上它是向Web 服务器恳求GET ”/“。另一个常见的办法是POST,常用于提交特定类型的表单,例如运用信用卡付费和处理一个订单。留意,GET URLs 能够被搜索引擎索引得到(想像一下Google 测验购买你网站上的所用物品)。


在咱们的web.py 代码中。咱们明晰区别这两种办法:


class index:

   def GET(self):

       print "Hello, world!"

当接收到一个GET 恳求时,上面的GET 办法将会被web.py 调用。


好的。现在,咱们只需增加最终一行代码,让web.py 发动网页运用:


if __name__ == "__main__": web.run(urls, globals())

上面告知web.py 怎么装备URLs,以及找寻的类在文件中的大局命名空间。


整个code.py 文件的内容如下:


import web


urls = (

 '/', 'index'    )


class index:

   def GET(self):

       print "Hello, world!"


if __name__ == "__main__": web.run(urls, globals())

留意到没有,尽管我说了许多东西,但实践上web 运用的代码就只得上面的几行,并且这是一个完好的web.py 运用。在你的命令行下输入:


$ python code.py

Launching server: http://0.0.0.0:8080/

现在,你的web.py 运用现已发动了服务器。经过阅读器拜访http://localhost:8080/ 的话,会见到”Hello, world!“。在发动服务器的时分,你能够在python code.py 后边增加IP 地址/端口 来操控web.py 发动的服务器。例如:python code.py 8888。


3. 调试


web.py 自身也供给调试的东西。在最终的“if name …” 代码前面增加:


web.webapi.internalerror = web.debugerror

并在最终的“if name …” 增加”web.reloader“:


if __name__ == "__main__": web.run(urls, globals(), web.reloader)

上面的代码会使你在调试的阶段得到更多有用的信息。web.reloader 其实是一个中间件,当你在运行时修改了code.py 文件后,web.reloader 会从头加载code.py 文件,让你在阅读器上马上能够看到改变。怎么有多何改变的话,仍是需求从头发动服务器。web.py 也供给web.profiler ,能够输出有用的信息,有关每个页面的每个函数调用的次数,这用助于你改进代码。


web.py 确实适当的细巧,应当归属于轻量级的web 结构。但这并不影响web.py 的强壮,并且运用起来很简略、很直接。在实践运用上,web.py 更多的是学术上的价值,由于你能够看到更多web 运用的底层,这在当今“笼统得很好”的web 结构上是学不到的 :) 假如想了解更多web.py,能够拜访web.py 的官方文档。


下载地址