今天给大家分享的是基于 Flask、Echarts、Pandas 等实现的图书分析大屏展示系统。
采用 pandas、numpy 进行数据分析
基于 snownlp、jieba 进行情感分析
后端接口选用 RESTful 风格,构建 Swagger 文档
基于 Flask、Echarts 构建 Web 服务,采取前后端分离的开发模式
结合 redis 提高访问速度
采用 docker-compose 构建项目
使用 gitee、github 进行代码版本管理
前端采用 Promise、async、await 进行异步请求
主页:https://python.sinwer.cn/
数据接口:https://python.sinwer.cn/v1/
图片太大,不清晰。

docker-compose up
localhost:8080

本文由技术群粉丝投稿分享,项目源码、数据、技术交流提升,均可加交流群获取,群友已超过2000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友
方式①、添加微信号:dkl88191,备注:来自CSDN +研究方向
方式②、微信搜索公众号:Python学习与数据挖掘,后台回复:图书分析大屏
部分代码展示
wsgi.py
import sysWIN = sys.platform.startswith('win')
from gevent import monkeyif WIN:monkey.patch_all(contextvars=False)
else:monkey.patch_all()
# gc.disable()
# gc.set_debug(gc.DEBUG_LEAK)
import osfrom dotenv import load_dotenv, find_dotenv
from werkzeug.middleware.proxy_fix import ProxyFixfrom BookAnalysis import create_appload_dotenv(find_dotenv())app = create_app(os.environ.get('FLASK_ENV', 'production'))
app.wsgi_app = ProxyFix(app.wsgi_app)
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Software: PyCharm
import jieba
import pandas as pdfrom BookAnalysis.analysis.base import Baseclass Analysis(Base):def __init__(self, filename=None):if filename is None:filename = 'bookComment.csv'super().__init__(filename)def getData(self):# 选取评论数量最多的图书url = self.df['url'].value_counts().idxmax()df: pd.DataFrame = self.df.loc[self.df['url'] == url]# print(df.head())# print(df.shape)# print(df.columns)comments = df['comment'].astype(str).tolist()counts = {}# 统计评论for comment in comments:words = jieba.cut(comment, use_paddle=True)for word in words:if len(word) == 1:continueelse:counts[word] = counts.get(word, 0) + 1# _ans = []# for key, value in counts.items():# _ans.append({# "name": key,# "value": value# })# print(counts)# print(_ans)# 按照 value 进行排序 dictcounts = sorted(counts.items(), key=lambda item: item[1], reverse=True)_ans = []for key, value in counts:# 获取前 200 个分词,减少网络传输压力if len(_ans) > 200:break_ans.append({"name": key,"value": value})return _ansif __name__ == '__main__':print(Analysis().getData())