Python——Web.py詳解
ubuntu安裝Web.py
sudo pip install web.py
測試代碼:
import web urls = (
'/(.*)','hello'
)
app = web.application(urls,globals()) class hello:
def GET(self,name):
if not name:
name = 'world'
return 'hello,'+name+'!' if __name__=='__main__':
app.run()
类似于flask模板,这里也可以使用文件读写返回html内容:
import web urls = (
'/(.*)','hello'
)
app = web.application(urls,globals()) class hello:
def GET(self,name):
return open(r'index.html','r').read() if __name__=='__main__':
app.run()
URL映射:
完全匹配: /index
模糊匹配 /post/\d+
带组匹配 /post/(\d+)
import web urls = (
'/blog/\d+','blog',
'/index','index',
'/(.*)','hello',
)
app = web.application(urls,globals()) class index:
def GET(self):
return 'index' class blog:
def GET(self):
return 'blog' class hello:
def GET(self,name):
return 'hello' if __name__=='__main__':
app.run()
请求处理:
请求参数获取 : web.input()
hello.html源码:
<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<title>User Login</title>
</head> <body>
<div>
<h6>User Login</h6>
</div>
<form action="/blog/123" method="POST">
<h6>用戶名:</h6>
<input type="text" name="username"><br>
<h6>密碼:</h6>
<input type="password" name="password"><br>
<input type="submit" name="submit"><br>
</form>
</body>
</html>
app.py源码:
import web urls = (
'/blog/\d+','blog',
'/index','index',
'/(.*)','hello',
)
app = web.application(urls,globals()) class index:
def GET(self):
r = web.input()
return r class blog:
def POST(self):
r = web.input()
return r class hello:
def GET(self,name):
return open(r'hello.html','r').read() if __name__=='__main__':
app.run()
运行结果:



请求头获取 : web.ctx.env
app.py代码如下,hello.html代码如上相同
import web urls = (
'/blog/\d+','blog',
'/index','index',
'/(.*)','hello',
)
app = web.application(urls,globals()) class index:
def GET(self):
return web.ctx.env class blog:
def POST(self):
r = web.input()
return r class hello:
def GET(self,name):
return open(r'hello.html','r').read() if __name__=='__main__':
app.run()
运行结果:
响应处理:
模板文件读取:render.index("参数")
在py文件同目录下要创建templates文件夹,存放模板。
index是指定模板的名称,参数是html中是所需参数。
import web
render = web.template.render("templates")
urls = (
'/blog/\d+','blog',
'/index','index',
'/(.*)','hello',
)
app = web.application(urls,globals())
class hello:
def GET(self,name):
return render.hello()
if __name__=='__main__':
app.run()
采用模板就可以不用之前所用的open(r'hello.html','r').read()了。
结果数据获取:model.select("sql")
参考我之前的文章http://www.cnblogs.com/LexMoon/p/Flask_6.html
URL跳转 :web.seeother("/")
import web urls = (
'/(.*)','hello',
)
app = web.application(urls,globals()) class hello:
def GET(self,name):
return web.seeother('http://www.cnblogs.com/LexMoon/') if __name__=='__main__':
app.run()
Python——Web.py詳解的更多相关文章
- 【Python】【web.py】python web py入门-4-请求处理(上)
python web py入门-4-请求处理(上) 2017年09月05日 23:07:24 Anthony_tester 阅读数:2907 标签: webpy入门请求处理 更多 个人分类: Pyth ...
- python web.py安装使用
官方首页:http://webpy.org/) 它的源代码非常整洁精干,学习它一方面可以让我们快速了解python语法(遇到看不懂的语法就去google),另一方面可以学习到python高级特性的使用 ...
- mac OS X 配置Python+Web.py+MySQLdb环境
MAC默认支持Python 2.7所以不用安装. 1.安装pip sudo easy_install pip 2.安装Web.py sudo pip install Web.py 3.安装MySQLd ...
- Python Web.py
安装Web.py root@bt:~# sudo pip install web.py Downloading/unpacking web.py Downloading web.py-0.37.tar ...
- python web.py实现简单的get和post请求
使用web.py框架,实现简单的get和post请求: py文件名:mytest.py import web urls = ( '/', 'hello' ) app = web.application ...
- python web py安装与简单使用
web.py是一个轻量级的python web框架,简单而且功能强大.相对flask和Django,web.py更适合初学者来学习和了解web开发的基础知识. 安装: pip install we ...
- 【Python】【Web.py】python web py入门-5-请求处理(下)
前面一篇,我们演示了如何获取GET和POST请求的参数信息,这篇我们介绍如何获取请求的头部信息,这个方法我们在前面一篇文章已经给出了.直接来看一个例子,首先,我们在hello.py文件新增一个方法,用 ...
- python web.py操作mysql数据库,实现对数据库的增删改查操作
使用web.py框架,实现对mysql数据库的增删改查操作: 该示例代码中连接的是本地数据库testdb,user表,表结构比较简单,只有两个字段:mobile和passwd,类型均为字符型 实际应用 ...
- 树莓派上搭建基于Python+web.py+fastcgi+lighttpd的网站
最近在网上淘了一个树莓派,什么是树莓派?这里是他的官方网站你可以去看看. 简单的说就是一块使用了ARM11的CPU,具有256MB或512MB内存的具有两个USB接口,一个RJ45接口,HDMI输出和 ...
随机推荐
- Linux几个小杂碎点(更新中)
1 BIOS时间和系统时间问题 安装完CentOS后,系统时间是CST时间,而BIOS时间是UTC时间,因此系统时间会比BIOS时间快8个小时.如果您设置BIOS自动开机的话,就会总是差个8小时.需要 ...
- 【转】用Linux命令行获取本机外网IP地址
$ curl ifconfig.me $ curl icanhazip.com $ curl ident.me $ curl ipecho.net/plain $ curl whatismyip.ak ...
- C#基础(四)--值类型和引用类型,栈和堆的含义
本文主要是讨论栈和堆的含义,也就是讨论C#的两种类据类型:值类型和引用类型: 虽然我们在.net中的框架类库中,大多是引用类型,但是我们程序员用得最多的还是值类型. 引用类型如:string,Obje ...
- 23_迭代器、模拟For循环
一.可迭代对象 和 迭代器 1.可迭代对象和迭代器 可迭代对象:可以直接作用于for循环的对象统称为可迭代对象,Iterable. 迭代器:可以被next()函数调用并不断返回下一个值的对象称为迭代器 ...
- 基于 React + Webpack 的音乐相册项目(上)
笔记仓库:https://github.com/nnngu/LearningNotes 上一篇文章用爬虫自动下载了一些图片,这一篇就用这些图片做一个音乐相册吧! 效果预览 点击图片,切换到背面: 演示 ...
- mui页面跳转(传值+接收)
<script type="text/javascript" charset="utf-8"> mui.init(); mui.plusReady( ...
- CentOS7系统配置国内yum源和epel源
1.首先进入/etc/yum.repos.d/目录下,新建一个repo_bak目录,用于保存系统中原来的repo文件 [root@bogon ~]# cd /etc/yum.repos.d/ [roo ...
- HTML中的表单
1.HTML中表单元素的基本概念 HTML表单是HTML元素中较为复杂的部分,表单往往和脚本,动态页面,数据处理等功能相结合,因此是制作动态网站很重要的内容. 表单一般用来收集用户的输入信息 2.表单 ...
- 以Apache模块的方式编译安装php-5.5.4
新建用户及用户组 groupadd webuser useradd -g webuser webuser 下载php-5.5 下载地址:http://pan.baidu.com/s/1o6I6Lnk ...
- null undefiend NaN
console.log(typeof NaN) console.log(typeof undefined) console.log(typeof null)