[Flask]学习Flask第三天笔记总结
from flask import Flask,render_template,request
from others import checkLogin
app = Flask(__name__) #从templates里引用index.html
#return render_template("index.html")
@app.route('/')
def index():
return '''<form action="/login" method="post">
<input type="text" name="username" value=""><br >
<input type="text" name="password" value="">
<input type="submit" value="submit">
</form>
''' @app.route('/login',methods=['GET','POST'])
def login():
if request.method == 'POST':
#checkLogin是自己写的使用mysql返回账号密码正确性,返回True/False
#request.form['username'] 从表单获取username的值,password同
#获取get参数的是 request.args.get['keyword']获取keyword参数值
if checkLogin(request.form['username'],request.form['password']):
return 'Hello '+request.form['username']
else:return 'Fail' if __name__ == '__main__':
#debug显示信息,host绑定ip,port 绑定端口
app.run(debug=True)
引用模板,并在模板显示信息
from flask import Flask,render_template,request
app = Flask(__name__) @app.route('/user/<name>')
def index(name):
return render_template('user.html',username=name)
模板 user.html
<ul>
{% if username %}
<li>{{ username }}</li>
{% endif %}
</ul>
用之前写的爬行wooyun镜像站实例(部分代码)记录:
from flask import Flask,render_template,request
from wooyun import wooyunfilter
app = Flask(__name__) @app.route('/',methods=['GET'])
def index():
return render_template('index.html') @app.route('/search',methods=['GET'])
def search():
keyword = request.args.get('keyword')
title = keyword
obj = wooyunfilter(keyword,'')
a = obj.search()
pageZip = zip(a[0],a[1],a[2],a[3])
return render_template('wooyun.html',title=title,zip=pageZip) if __name__ == '__main__':
app.run(debug=True)
wooyun.html主要代码:
<ul>
{% for hrefs,times,titles,types in zip %}
<li><strong>{{ times }}</strong><a href="{{ url_for('apear',next=hrefs) }}" target="_blank">{{ ' '+titles }}</a><span>{{ ' '+types }}</span></li>
{% endfor %} </ul>
[Flask]学习Flask第三天笔记总结的更多相关文章
- Flask 学习系列(三)---Jinjia2使用过滤器
再Jinjia2中过滤器是一种转变变量输出内容的技术.··过滤器通过管道符号“|与变量链接,并且可以通过圆括号传递参数” .举例说明: {{my_variable|default('my_variab ...
- Flask学习-Flask app启动过程
因为0.1版本整体代码大概只有350行,比较简单.所以本篇文章会以Flask 0.1版本源码为基础进行剖析Flask应用的启动过程. Flask参考资料flask,官网有一个最简单app: from ...
- Flask学习-Flask基础之WSGI
一.WSGI为什么会出现? 在学习一个东西之前,我们肯定想知道:它为什么会出现?那么,WSGI为什么会出现呢? 我们知道,部署一个web应用,经常需要使用nginx.apache或者IIS等web服务 ...
- Flask学习-Flask app接受第一个HTTP请求
一.__call__() 在Flask app启动后,一旦uwsgi收到来自web server的请求,就会调用后端app,其实此时就是调用app的__call__(environ,start_res ...
- Flask学习-Wsgiref库
一.前言 前面在Flask学习-Flask基础之WSGI中提到了WerkZeug,我们知道,WerkZeug是一个支持WSGI协议的Server,其实还有很多其他支持WSGI协议的Server.htt ...
- Flask 学习笔记
Flask 是一个Web应用框架,我也就是一边看书,一边写博文做记录 这本书: 首先安装Flask ,和配置环境,参考这边博客: 然后就开始学习Flask 了. 1.Application and R ...
- Python Flask学习笔记之模板
Python Flask学习笔记之模板 Jinja2模板引擎 默认情况下,Flask在程序文件夹中的templates子文件夹中寻找模板.Flask提供的render_template函数把Jinja ...
- Python Flask学习笔记之Hello World
Python Flask学习笔记之Hello World 安装virtualenv,配置Flask开发环境 virtualenv 虚拟环境是Python解释器的一个私有副本,在这个环境中可以安装私有包 ...
- Flask 学习(三)模板
Flask 学习(三)模板 Flask 为你配置 Jinja2 模板引擎.使用 render_template() 方法可以渲染模板,只需提供模板名称和需要作为参数传递给模板的变量就可简单执行. 至于 ...
随机推荐
- SpringMVC09异常处理和类型转化器
public class User { private String name; private Integer age; public String getName() { return name; ...
- MVC4建立DBContext的EF6数据
MVC4建立DBContext的EF6数据时 1.需要using System.Data.Entity;命名空间 2.此命名空间需要安装EntityFromwork.dll,此dll可以在项目——&g ...
- ajax分页实现,jquery.pagination.js
1.前台使用ajax无刷新分页,主要需要生成分页的工具条,这里使用的是jquery.pagination.js 插件参数可以参考----张龙豪-jquery.pagination.js分页 下面贴出代 ...
- Jquery+css实现图片无缝滚动轮播
Today,在XX学院的教学视频中,偶尔看到了Jquery+css实现图片无缝滚动轮播视频教程,虽然以前已写过类似的,但是我感觉他学的比较精简.为了方便以后做项目时直接拷贝,特地写出来,顺便和大家分享 ...
- 注意mysql中的编码格式和php中的编码格式一致
今天发现用php代码插入英文可以,但是中文插入不进去,注意编码要一致,@mysql_connect("localhost","root","12345 ...
- (转)精通 JS正则表达式
精通 JS正则表达式 (精通?标题党 ) 正则表达式可以: •测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式.这称为数据有效性验证 ...
- Undefined symbols for architecture x86_64:
真机运行正常, 但要在模拟器运行的时候, 编译就报错了: 解决方法: 1.将Build Settings的Architectures修改为arm7 armv7s.Xcode7默认是加上arm64的,但 ...
- 检查DOM能力的函数
var a=document.implementation.hasFeature("Core","2.0"); var b=document.implement ...
- error: expected constructor, destructor, or type conversion before '.' token
今天写代码是遇到这样一个问题error: expected constructor, destructor, or type conversion before '.' token:立马网上查,原来是 ...
- 你好,C++(15)四两拨千斤——3.9 指向内存位置的指针
3.9 指向内存位置的指针 一天,两个变量在街上遇到了: “老兄,你家住哪儿啊?改天找你玩儿去.” “哦,我家在静态存储区的0x0049A024号,你家呢?” “我家在动态存储区的0x0022FF0 ...