一.安装 1.flask_session 不想将Session的信息存放在Cookie 将Session存放在Redis Cookie中保存Session的ID flask中的session是直接将数据存在cookie中, 而flask_session能更安全,简便的在flask中使用session,在浏览器的cookie中存入session的sid,我们使用这个插件结合redis数据库来使用. 搜索结果有很多,安装下图这个 2.redis 插件安装 二.使用 redis简单使用 from re…
知识点回顾 1.flask依赖wsgi,实现wsgi的模块:wsgiref(django),werkzeug(flask),uwsgi(上线) 2.实例化Flask对象,里面是有参数的 app = Flask(__name__,template_folder='templates',static_url_path='/xxxxxx') 3.两种添加路由的方式 方式一: @app.route('/xxxx') # @decorator def index(): return "Index"…
一.实例化补充 instance_path和instance_relative_config是配合来用的. 这两个参数是用来找配置文件的,当用app.config.from_pyfile('settings.py')这种方式导入配置文件的时候会用到 from flask import Flask,request app = Flask(__name__,instance_path=None, instance_relative_config=True) app.config.from_pyfil…
让我们先来看一个简单的例子,假设有下面这样一个蓝图(是关于用户主页的): from flask import Blueprint, render_template profile = Blueprint('profile', __name__) @profile.route('/<user_url_slug>') def timeline(user_url_slug): # Do some stuff return render_template('profile/timeline.html'…
redis作为logstash中的官方broker,既有input插件,还有output插件. redis input插件 data_type属性: 有三种类型, list -> BLPOP --阻塞式列表弹出 channel -> SUBSCRIBE -- 指定订阅者 pattern_channel -> PSUBSCRIBE --多个订阅者,模糊匹配 input插件作为消息队列. 使用pattern_channel input { redis { data_type => &q…
一.使用 Flask中的特殊装饰器(中间件)方法常用的有三个 @app.before_request # 在请求进入视图函数之前 @app.after_request # 在请求结束视图函数之后 响应返回客户端之前 @app.errorhandler(404) # 重定义错误信息 @before_request def func(): pass @after_request def func(ret): # 函数中要加参数 pass @app.errorhandler(404) # 错误代码 d…
from flask import Flask,render_template,request,redirect,session app = Flask(__name__,template_folder='templates') app.secret_key = "sdsfdsgdfgdfgfh" @app.before_request def process_request(): if request.path=="/login": return None if…
一.flask分页组件 from urllib.parse import urlencode,quote,unquote class Pagination(object): """ 自定义分页 """ def __init__(self,current_page,total_count,base_url,params,per_page_count=10,max_pager_count=11): try: current_page = int(cu…
Flask开发系列之Flask+redis实现IP代理池 代理池的要求 多站抓取,异步检测:多站抓取:指的是我们需要从各大免费的ip代理网站,把他们公开的一些免费代理抓取下来:一步检测指的是:把这些代理通过异步请求的方式,利用这些代理请求网站:如果能正常请求就证明代理可用,如果不能正常请求就证明代理不行,这时就可以把这个代理剔除掉,异步指的是:我们不需要一直等待代理请求网站,到得到response之后在执行相应的操作就可以了,异步可以提高检测效率. 定时筛选,持续更新:我们维护一个代理池,我们需…
一.特殊装饰器(中间件) 1.before_request 在请求进入视图函数之前 @app.before_request def look(): 2. after_request 在结束视图函数之后,响应返回客户端之前 @app.after_request def af1(res) from flask import Flask, request, session, redirect app = Flask(__name__) app.secret_key = "#$%^&*(&quo…