赞
踩
博主介绍:✌全网粉丝10W+,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久,选择我们就是选择放心、选择安心毕业✌感兴趣的可以先收藏起来,点赞、关注不迷路✌
毕业设计:2023-2024年计算机毕业设计1000套(建议收藏)
毕业设计:2023-2024年最新最全计算机专业毕业设计选题汇总
技术栈:python语言、Flask框架、MySQL数据库、Vue框架、requests爬虫、Echarts可视化、情感分析(百度情感分析senta模型)、tfidf、textrank算法、
系统采集微博话题文章和评论数据,利用senta框架提供的预模型进行情感分析,对话题的关机键词、热度、地区进行分析,使用了tfidf、textrank等算法。
1、情感分析:使用 百度情感分析senta模型,分析话题下评论内容的情感数据,点击按钮会展示当前话题下情感分析数据
2、微博舆情:展示爬取到的文章信息及文章舆情分析信息(使用 百度情感分析senta模型分析舆情指数,舆情指数小于45分为绿色,45分-60分为橙色,大于60分为红色)。
点击地址可跳转到微博文章页面,点击详情按钮页面可查看该文章详情信息。
3、舆情地图:以地图的形式,直观的展示各个省份舆情信息,可以选择具体某个话题查看。
4、关键词分析: 针对某一个话题 ,使用 textrank和tfidf分别提取话题关键词,以饼图和环形图的形式展示出来。
5、数据分析: 以旭日图的形式展示各个话题正负面舆情占比。
(1)微博舆情关键词分析
(2)词云 分析
(3)话题中心
(4)舆情地图各省份
(5)数据分析
(6)热度分析
(7)用户管理
(8)后台数据管理
技术栈:python语言、Flask框架、MySQL数据库、Vue框架、requests爬虫、Echarts可视化、情感分析(百度情感分析senta模型)、tfidf、textrank算法、
系统采集微博话题文章和评论数据,利用senta框架提供的预模型进行情感分析,对话题的关机键词、热度、地区进行分析,使用了tfidf、textrank等算法。
1、情感分析:使用 百度情感分析senta模型,分析话题下评论内容的情感数据,点击按钮会展示当前话题下情感分析数据
2、微博舆情:展示爬取到的文章信息及文章舆情分析信息(使用 百度情感分析senta模型分析舆情指数,舆情指数小于45分为绿色,45分-60分为橙色,大于60分为红色)。
点击地址可跳转到微博文章页面,点击详情按钮页面可查看该文章详情信息。
3、舆情地图:以地图的形式,直观的展示各个省份舆情信息,可以选择具体某个话题查看。
4、关键词分析: 针对某一个话题 ,使用 textrank和tfidf分别提取话题关键词,以饼图和环形图的形式展示出来。
5、数据分析: 以旭日图的形式展示各个话题正负面舆情占比。
from flask import Flask from app_user import index_api from app_business import home_api from flask import Flask from flask_sqlalchemy import SQLAlchemy from flask_admin import Admin from flask_admin.contrib.sqla import ModelView app = Flask(__name__) # 配置MySQL数据库 app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:123456@localhost/p_weibo' app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False db = SQLAlchemy(app) # 初始化Flask Admin admin = Admin(app, name='后台管理') # 定义模型 class tbl_user(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(255)) account = db.Column(db.String(255)) pwd = db.Column(db.String(255)) email = db.Column(db.String(255)) phone = db.Column(db.String(255)) login_flag = db.Column(db.String(255)) remarks = db.Column(db.String(255)) role = db.Column(db.String(255)) icon = db.Column(db.String(255)) class talk_article(db.Model): id = db.Column(db.Integer, primary_key=True) talk_title = db.Column(db.String(255)) create_user = db.Column(db.String(255)) create_date = db.Column(db.String(255)) text = db.Column(db.String(255)) attitudes = db.Column(db.String(255)) comments = db.Column(db.String(255)) reposts = db.Column(db.String(255)) create_time = db.Column(db.String(255)) sentiment_label = db.Column(db.String(255)) sentiment_key = db.Column(db.String(255)) positive_probs = db.Column(db.String(255)) negative_probs = db.Column(db.String(255)) class talk_detail(db.Model): id = db.Column(db.Integer, primary_key=True) title = db.Column(db.String(255)) read_num = db.Column(db.String(255)) read_unit = db.Column(db.String(255)) talk_num = db.Column(db.String(255)) talk_unit = db.Column(db.String(255)) write_num = db.Column(db.String(255)) write_unit = db.Column(db.String(255)) type = db.Column(db.String(255)) short_url = db.Column(db.String(255)) target_url = db.Column(db.String(255)) summary = db.Column(db.String(255)) create_time = db.Column(db.String(255)) create_user = db.Column(db.String(255)) class talk_comment(db.Model): id = db.Column(db.Integer, primary_key=True) talk_title = db.Column(db.String(255)) article_id = db.Column(db.String(255)) create_date = db.Column(db.String(255)) source = db.Column(db.String(255)) create_user = db.Column(db.String(255)) detail = db.Column(db.String(255)) create_time = db.Column(db.String(255)) sentiment_label = db.Column(db.String(255)) sentiment_key = db.Column(db.String(255)) positive_probs = db.Column(db.String(255)) negative_probs = db.Column(db.String(255)) # 自定义模型视图 class tbl_user_ModelView(ModelView): column_list = ('id','name', 'account','pwd','email','phone','login_flag','remarks','role') # 【搜索框】---过滤的字段名 column_searchable_list = ('name',) # 设置分页大小 page_size = 10 class talk_article_ModelView(ModelView): column_list = ('id','talk_title','create_user','create_date','text','attitudes','comments','reposts','create_time','sentiment_label','sentiment_key','positive_probs','negative_probs') # 【搜索框】---过滤的字段名 column_searchable_list = ('text',) # 设置分页大小 page_size = 10 class talk_detail_ModelView(ModelView): column_list = ('id','title','read_num','read_unit','talk_num','talk_unit','write_num','write_unit','type','short_url','summary','create_time','create_user') # 【搜索框】---过滤的字段名 column_searchable_list = ('title',) # 设置分页大小 page_size = 10 class talk_comment_ModelView(ModelView): column_list = ('id','talk_title','source','create_user','detail','create_time','sentiment_label','sentiment_key','positive_probs','negative_probs') # 【搜索框】---过滤的字段名 column_searchable_list = ('detail',) # 设置分页大小 page_size = 10 # 将模型添加到后台管理 admin.add_view(tbl_user_ModelView(tbl_user, db.session)) admin.add_view(talk_article_ModelView(talk_article, db.session)) admin.add_view(talk_detail_ModelView(talk_detail, db.session)) admin.add_view(talk_comment_ModelView(talk_comment, db.session)) # 创建应用程序 app.config["SECRET_KEY"] = 'TPmi4aLWRbyVq8zu9v82dWYW1' app.register_blueprint(index_api) app.register_blueprint(home_api) if __name__ == '__main__': app.run(host="127.0.0.1", port=5000) # 启动Flask项目
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。