基于python+MySQL的新冠肺炎疫情数据分析及可视化
源码地址:基于python+MySQL的疫情数据分析及可视化.zip-Python文档类资源-CSDN下载
项目环境:pycharm python3.9 数据库:MySQL8
第三方库:urllib、urllib3、requests、traceback、pymysql、json、jieba、wordcloud、requests、sys、time、flask库,做好前期准备。
项目设计文档目录:
部分数据截图:
编写代码(部分重要代码)
def get_tencent_data(): url1 = "https://view.inews.qq.com/g2/getOnsInfo?name=disease_h5" url2 = "https://view.inews.qq.com/g2/getOnsInfo?name=disease_other" headers = { "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36" }
这里用url获取响应从腾讯新闻中获取数据,并获取的是text字节形式的内容。代码中url是获取数据的目标网页,这边是获取了腾讯的两个网页。
res1 = json.loads(r1.text) res2 = json.loads(r2.text) data_all1 = json.loads(res1["data"]) data_all2 = json.loads(res2["data"])
这里是将网页信息从转化为字典text,方便我们进行抓取数据。Json加载data中的数据到新的变量dataall。
def get_conn(): # 建立连接 conn = pymysql.connect(host="###", user="###", password="###", db="cov", charset="utf8") # c创建游标 cursor = conn.cursor() return conn, cursordef close_conn(conn, cursor): if cursor: cursor.close() if conn: conn.close()
建立与数据库(cov)的连接,使得能从数据库中数据在运行图中显示
def update_hotsearch(): cursor = None conn = None try: context = get_baidu_hot() print(f"{time.asctime()}开始更新数据") conn,cursor = get_conn() sql = "insert into hotsearch(dt,content) values(%s,%s)" ts = time.strftime("%Y-%m-%d %X") for i in context: cursor.execute(sql,(ts,i)) conn.commit() print(f"{time.asctime()}数据更新完毕") except: traceback.print_exc() finally: close_conn(conn,cursor)
对网页中数据的变化在数据库中进行实时更新
def get_c2_data():sql = "select province,sum(confirm) from details " \ "where update_time=(select update_time from details " \ "order by update_time desc limit 1) " \"group by province" res = query(sql) return res
使用echarts绘制中国地图模块
模块设计:
项目运行截图:
源码地址:基于python+MySQL的疫情数据分析及可视化.zip-Python文档类资源-CSDN下载本系统主要是基于Python语言和数据库进行分析制作和可视化。项目实现效果可打开以下项目说明进行更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/vx1271487114/75998037?spm=1001.2014.3001.5503