Python爬虫和数据可视化——实战9-数据可视化Flask

数据可视化

  • Flask
    • 了解框架
    • Flask定义
    • debug模式
    • 知识点
      • 获取用户的字符串参数
      • 获取用户的整型参数
      • 匹配不同的路由(提取不同的内容)
    • 向页面传递一个变量
      • 传递普通变量
      • 传递列表
      • 传递字典
        • 了解一下如何在页面打印表格,以及如何迭代
    • 表单提交
      • 创建表单
      • 提交表单
    • request请求对象
    • 动态的得到网址的根路径

Flask

Python最出名的框架是Django(粘狗),此外还有Flask,Tornado等框架。虽然Flask不是最出名的框架,但是Flask应用算是最灵活的框架之一,这也是Flask受到广大开发者喜爱的原因。

了解框架

两部分:一个是用户的网络访问HTTP的请求,发送到服务器端,服务器端把请求接收到,给客户端一个相应
Python爬虫和数据可视化——实战9-数据可视化Flask_第1张图片
就这么一个过程,你要是想自己全部写出来,是非常麻烦的,因为在这里面服务器如何接受用户的请求,如何进行处理,以及如何进行相关的一个反馈,。。。是非常繁琐的。

Web开发框架:所有生活中有一些人,他就把这些已经成型的代码已经写好了,你只需要关注用户的请求是什么,响应是什么,至于中间的过程你都不用考虑。
即Web框架就是把已经写好的成熟的代码开放出来,基于别人写好的东西,你只需要关注自己的请求和响应部分即可。

Flask定义

Flask 是一个使用 Python 编写的轻量级 Web 应用程序框架,它主要面向需求简单的小应用。

Flask框架的核心就是Werkzeug(读音:work贼哥)和jinjia2(读音:金家2)
Werkzeug:进行请求的路由转发
jinjia2:响应如何包装成我们想要的样子

Werkzeug负责:
Python爬虫和数据可视化——实战9-数据可视化Flask_第2张图片

jinjia2负责:
在这里插入图片描述

在这里插入图片描述

只需两步:定路由,返回给用户渲染后的网页文件
Python爬虫和数据可视化——实战9-数据可视化Flask_第3张图片

debug模式

Python爬虫和数据可视化——实战9-数据可视化Flask_第4张图片
debug为调试模型,即你实时修改,实时变化
此时的debug为off
即当我们修改返回的对应内容时,要每次重新运行,才会生效。

开启调试模式:(此时可以做到实时修改,实时变化,不需要重新运行程序,只需刷新原来的网页即可。)
Python爬虫和数据可视化——实战9-数据可视化Flask_第5张图片
Python爬虫和数据可视化——实战9-数据可视化Flask_第6张图片

知识点

Python爬虫和数据可视化——实战9-数据可视化Flask_第7张图片
'/'是指我们的网页是/
在这里插入图片描述

获取用户的字符串参数

通过访问路径,获取用户的字符串参数
用<>来提取我们想要的内容
%s为字符串,s为string字符串
Python爬虫和数据可视化——实战9-数据可视化Flask_第8张图片

获取用户的整型参数

int整型
Python爬虫和数据可视化——实战9-数据可视化Flask_第9张图片

匹配不同的路由(提取不同的内容)

虽然路径一样,/test/,但后面的类型不一样,所以会自动匹配到不同的路由上
Python爬虫和数据可视化——实战9-数据可视化Flask_第10张图片
Python爬虫和数据可视化——实战9-数据可视化Flask_第11张图片

路由的路由路径不能重复,用户只能通过唯一路径来访问特定的函数

向页面传递一个变量

之前传的都是死的,内容改不了
怎么加入一个变量呢?
渲染的作用就在此

传递普通变量

Python爬虫和数据可视化——实战9-数据可视化Flask_第12张图片
用两个花括号引入我们的变量,大括号只能访问一般变量
Python爬虫和数据可视化——实战9-数据可视化Flask_第13张图片
结果:
Python爬虫和数据可视化——实战9-数据可视化Flask_第14张图片

传递列表

用花括号和百分号括起来的是控制结构。
想要用for循环或者if语句,如为{% for循环语句 %} {% endfor %},此为jinjia的模板,必须这么写

Python爬虫和数据可视化——实战9-数据可视化Flask_第15张图片
Python爬虫和数据可视化——实战9-数据可视化Flask_第16张图片

传递字典

常见的方式就是把两个名一样,传给页面(无论是传递变量、列表、字典。。。都可以一样名)

Python爬虫和数据可视化——实战9-数据可视化Flask_第17张图片
Python爬虫和数据可视化——实战9-数据可视化Flask_第18张图片

了解一下如何在页面打印表格,以及如何迭代

表格是< table >,一行是< tr>,一列是< td>
Python爬虫和数据可视化——实战9-数据可视化Flask_第19张图片

< table border=‘1’> 此时的表格有框了,
Python爬虫和数据可视化——实战9-数据可视化Flask_第20张图片

Python爬虫和数据可视化——实战9-数据可视化Flask_第21张图片

表单提交

创建表单

Python爬虫和数据可视化——实战9-数据可视化Flask_第22张图片

表单拥有两个输入字段以及一个提交按钮,当提交表单时,表单数据会提交到名为 “form_action.asp” 的页面:
Python爬虫和数据可视化——实战9-数据可视化Flask_第23张图片
Python爬虫和数据可视化——实战9-数据可视化Flask_第24张图片
action 属性规定当提交表单时,向何处发送表单数据。

method 属性规定如何发送表单数据(表单数据发送到 action 属性所规定的页面)。

表单数据可以作为 URL 变量(method=“get”)或者 HTTP post (method=“post”)的方式来发送。

Python爬虫和数据可视化——实战9-数据可视化Flask_第25张图片

提交表单

Python爬虫和数据可视化——实战9-数据可视化Flask_第26张图片
Python爬虫和数据可视化——实战9-数据可视化Flask_第27张图片
Python爬虫和数据可视化——实战9-数据可视化Flask_第28张图片
Python爬虫和数据可视化——实战9-数据可视化Flask_第29张图片

request请求对象

表单提交以后就是为了拿到用户输入的内容,怎么样拿到内容呢?用request对象把我们的表单信息进行封装,到时候直接拿就可以了。
Python爬虫和数据可视化——实战9-数据可视化Flask_第30张图片
Python爬虫和数据可视化——实战9-数据可视化Flask_第31张图片
Python爬虫和数据可视化——实战9-数据可视化Flask_第32张图片
Python爬虫和数据可视化——实战9-数据可视化Flask_第33张图片
Python爬虫和数据可视化——实战9-数据可视化Flask_第34张图片

动态的得到网址的根路径

在这里插入图片描述
url_for(’ ')中匹配的是定义返回页的函数名
也就是说url_for(‘result’)里面的result是函数的名字

你可能感兴趣的:(实战项目)