Web.py初探:安装与HelloWorld
1、web.py简介
web.py是一个基于python,简单而又强大的开源web框架。 由于自己总是对轻量级的东西比较偏爱。因此选择了web.py来学习web开发。目前关于web.py的相关资料比较少(甚至连wikipedia的条目都没有……),自己主要通过官网上的教程和文档来学习,以后会逐步把自己的学习体会总结下来。
2、web.py安装
web.py的安装非常简单,而且几乎也不需要什么配置。首先当然要安装python,然后从官网下载web.py的压缩包: wget 。解压后直接执行python setup.py install即安装完毕。web.py有一个内置的web服务器,因此装完之后其实就可意直接使用了。不过更正式一点的话,还需要安装flup来提供wsgi接口(wsgi是python应用程序和web服务器之间的一种接口,类似于java的servlet)。flup的下载地址是: 。flup的安装同样是执行python setup.py install。需要用到的话,还需要安装psycopg2和postgresql,psycopg可以到这里下载: 这个我在安装的时候出现不少问题,提示找不到pg_config需要安装postgresql-devel插件。 而提示找不到python.h则需要安装python-devel。postgresql可以到这里下载: 我用yum试了一下,发现自己的机器上已经默认装有最新版。
3、第一个web.py程序
如果有python基础的话,web.py的入门非常简单。正如官网上写的那句web.py slogan:“think about the ideal way to write a web app. write the code to make it happen.”
hello world程序非常简单,我们可以直接打开python的交互式解释器。然后写上这一行:
>>>import web
来引入web.py模块。
然后下一行是:
>>>urls=('/','index')
这行的作用是声明网站的url,第一个参数是一个正则表达式,用来匹配url,第二个参数就是我们url所要处理的类。
接下来用这个url来创建一个程序:
>>>app=web.application(urls, globals())
再接下下来,就是定义刚才提到的index类:
>>>class index:
def get(self):
return 'hello world!'
这里要注意的是get,定义get用来请求一个网页,最后返回的html代码就是所展现的网页的内容。另一个重要的函数是post则是用来提交表单,在这个简单的程序里并不需要与用户的交互,所以仅定义了get函数。
最后只要加上这句程序就可以运行啦:
>>>app.run()
我们将看到的是http://0.0.0.0:8080/,8080代表的是端口号。在中直接输入这个地址,就可以看到hello world的页面了!
如果直接写成一个脚本,那么执行python filename.py即可。
此时会看到两个提示:
127.0.0.1:57720 - - [17/sep/2011 22:46:28] "http/1.1 get /" - 200 ok
127.0.0.1:57720 - - [17/sep/2011 22:46:28] "http/1.1 get /favicon.ico" - 404 not found
第一个ok应该是说明获取url成功,第二个说找不到favicon.ico。ico是图标文件,看来应是指网站的图标,由于我们并不是在做一个正式的网站,所以无关紧要。
下一篇: django 一对多关系操作