EverydayOneCat
1. Flask入门
1.1 关于Flask
Flask诞生于2010年,是Armin ronacher(人名)用Python语言基于Werkzeug工具箱编写的轻量级Web开发框架。它主要面向需求简单的小应用。
Flask本身相当于一个内核,其他几乎所有的功能都要用到扩展(邮件扩展Flask-Mail,用户认证Flask- Login),都需要用第三方的扩展来实现。比如可以用Flask-extension加入ORM、窗体验证工具,文件 上传、身份验证等。Flask没有默认使用的数据库,你可以选择MySQL,也可以用NoSQL。其 WSGI 工具箱采用 Werkzeug(路由模块) ,模板引擎则使用 Jinja2 。
可以说Flask框架的核心就是Werkzeug和Jinja2。
Python最出名的框架要数Django,此外还有Flask、Tornado等框架。虽然Flask不是最出名的框架,但是Flask应该算是最灵活的框架之一,这也是Flask受到广大开发者喜爱的原因。
1.2入门Demo
新建Flask项目,直接在Pycharm选中对应即可
创建完了即可直接运行
1 |
|
接着我们进入http://127.0.0.1:5000/即可发现Hello World
我们可以启动Flask的Debug模式,该模式类似于热部署,这样每次改动不就用每次都重启项目。
有时我们需要将同一类URL映射到同一个视图函数处理,比如:使用同一个视图函数 来显示不同用户的个人信息。
通过向规则参数添加变量部分,可以动态构建URL。此变量部分标记为。它作为关键字参数传递给与规则相关联的函数。
1 |
|
1.3模板
Flask使用Jinja2这 个模板引擎来渲染模板。Jinja2能识别所有类型的变量,包括{}。 Jinja2模板引擎,Flask提供的render_template函数封装了该模板引擎,render_template函数的第一个参数是模板的文件名,后面 的参数都是键值对,表示模板中变量对应的真实值。
在templates文件夹中创建index.html
1 |
|
app.py添加函数:
1 | #模板 |
1.4表单提交
1 | #表单提交 |
result.html
1 |
|
1.5豆瓣数据可视化Flask应用
这里的movie.db用的是上篇博文中的结果,详情参见
这里Flask应用主要是接受页面的请求用来跳转页面,并把需要的数据传进去
1 | from flask import Flask,render_template |
模板的应用——movie.html
1 | <table class="table table-striped"> |
效果:
2.Echarts应用
官方中文网址:https://echarts.apache.org/zh/index.html
2.1官方入门案例
1 |
|
2.2豆瓣数据可视化Echarts应用
这里我们主要将Echarts应用于评分的可视化
修改app.py的judge函数:
1 |
|
我们根据官方给的实例进行自定义修改
放入html
1 | <!-- ======= Our Team Section ======= --> |
效果:
3.WordCloud应用
3.1导包
1 | import jieba |
3.2读取数据库
1 | conn = sqlite3.connect('../movie.db') |
3.3分词
1 | #分词 |
3.4词云
1 | #词云 |
3.5绘图
1 | #绘制图片 |
3.6WordCloud配置
WordCloud个参数的含义:
1 | font_path : string #字体路径,需要展现什么字体就把该字体路径+后缀名写上,如:font_path= '黑体.ttf' |
4.成果
首页:
电影:
评分:
词云:
团队:
结语
努力真的有结果吗
还是,我努力了
但却太菜
毫无开花的果😌