流程分析
文件结构
具体代码
flask主流程
此模块主要完成网页载入和与数据库连接.
from flask import Flask,render_template
import _sqlite3
app = Flask(__name__)
@app.route('/')
def index():
return render_template("index.html")
@app.route('/index')
def home():
# return render_template("index.html")
return index()
@app.route('/movie')
def movie():
datalist = []
con = _sqlite3.connect("movie.db")
cur = con.cursor()
sql = "select * from movie250"
data = cur.execute(sql)
for item in data:
datalist.append(item)
cur.close()
con.close()
return render_template("movie.html",movies = datalist)
@app.route('/score')
def score():
score = [] #评分
num= [] #每个评分统计出的电影数
con = _sqlite3.connect("movie.db")
cur = con.cursor()
sql = "select score ,count(score) from movie250 group by score"
data = cur.execute(sql)
for item in data:
score.append(item[0])
num.append((item[1]))
cur.close()
con.close()
return render_template("score.html",score=score,num=num)
@app.route('/word')
def word():
return render_template("word.html")
@app.route('/team')
def team():
return render_template("team.html")
if __name__ == '__main__':
app.run()
导入前端模板
在此导入下载好的模板,即static中的assets文件.
cloudworld(词云)
使用词云需先安装一些库,具体如下.
import jieba #分词
from matplotlib import pyplot as plt #绘图,可视化
from wordcloud import WordCloud #词云
from PIL import Image #图片处理
import numpy as np #矩阵运算
import sqlite3 #数据库
#准备词云所需的文字
con = sqlite3.connect('movie.db')
cur = con.cursor()
sql = "select instroduction from movie250"
data = cur.execute(sql)
text = ""
for item in data:
text = text+item[0]
# print(item[0])
cur.close()
con.close()
#分词
cut = jieba.cut(text)
string = ' '.join(cut)
print(len(string))
img = Image.open(r'.staticassetsimg ree.jpg') #打开遮罩图片
img_array = np.array(img) #将图片转换为数组
wc = WordCloud(
background_color='white',
mask = img_array,
font_path="msyh.ttc" #字体所在位置C:WindowsFontsF
)
wc.generate_from_text(string)
##绘制图片
fig = plt.figure(1)
plt.imshow(wc)
plt.axis('off') #是否显示坐标轴
plt.show() #显示生成的词云图片
plt.savefig(r'.staticassetsimgword.jpg',dpi =500)
制作网页
网页图表(Echarts)
使用Echarts制作网页图标
基本网页
导入assets文件修改
结果展示
教学视频
Python爬虫编程基础5天速成(2021全新合集)Python入门+数据分析