3月初,小F写了可视化教程的推文,其中提到了几个疫情的视化大屏,视觉效果十分酷炫


这期就来实战一波,并且将项目部署上线。


技术栈js+css+html+echarts+flask+mysql,果大致如下~



可以识别下面的二维码,访问我的在线地址。


第一次加载慢一点,稍安勿躁。



这里要说明一下,项目的来源是「B站」。


如果你也想自己部署上线这么一个疫情可视化大屏,那么可以访问下面的小程序,就可以看到具体的教程。


这里又不得不吹一下小破站,干货真的好多。



不过项目中还是有一些问题存在,比如讲解不清楚又或者代码有问题。


第一个便是爬虫代码的更新


项目的部分数据是来源于「腾讯新闻的疫情实时追踪」,其中视频中的爬取代码已经失效,需要新增一个数据接口。


https://view.inews.qq.com/g2/getOnsInfo?name=disease_other
https://view.inews.qq.com/g2/getOnsInfo?name=disease_h5


项目最新代码已经上传「GitHub」,阅读原文即可访问。


还有热搜的数据也是有所变化,标签发生了改变,数据来源于百度疫情热搜。


//*[@id="ptab-0"]/div/div[2]/section/div
//*[@id="ptab-0"]/div/div[2]/section/a/div/span[2]


第二个就是在本地远程连接服务器上的数据库


一开始按照视频里的方法,一直连接不上,折腾了小F好久。


查阅资料后才知道需要修改mysql的user表,设置远程连接权限。


还有就是成功连接上,插入数据,数据库的表格没反应。


最后将表格的类型从InnoBDB改为MYISAM就可以了,具体什么原因,就不太清楚了...


读取数据库数据时出现了Decimal类型的数据,通过Decimal.to_eng_string()解决。


data[0].to_eng_string(), data[1], data[2].to_eng_string(), data[3].to_eng_string()


第三个就是生产模式部署,视频中使用的是gunicorn,而我使用的则是uwsgi


只需将uwsgi.ini文件放在项目目录下,并在虚拟环境中运行即可。


这个在小F之前的几篇推文有提到过,可以翻翻看。


其中爬虫代码可以上传到服务器上,通过crontab定时运行,这样数据就能一直更新下去。


30 * * * * /root/app/test/env/bin/python3 /root/app/test/spider.py up_his >> /root/app/test/log_his 2>&1 &
3 */2 * * * /root/app/test/env/bin/python3 /root/app/test/spider.py up_hot >> /root/app/test/log_hot 2>&1 &
*/5 * * * * /root/app/test/env/bin/python3 /root/app/test/spider.py up_det >> /root/app/test/log_det 2>&1 &


记得加上虚拟环境的路径,这样程序才能运行成功。


还有一个需要加路径的地方就是selenium,视频里是C盘路径,我一个Linux服务器,肯定是不行的。


browser = webdriver.Chrome(options=chrome_options, executable_path='/usr/local/bin/chromedriver')


selenium、Chrome及驱动的具体安装,就需要问度娘啦!


如果还有问题,也可以加小F的微信,我尽量回答。


万水千山总是情,点个「在看」行不行。


···  END  ···

©著作权归作者所有:来自51CTO博客作者mb5fe18ec4a4df8的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 大赞!分享一个数据科学利器 PyCaret,几行代码搞定从数据处理到模型
  2. Pandas,数据处理的好帮手!
  3. 数据探索很麻烦?推荐一款史上最强大的特征分析可视化工具:yellowbr
  4. 干货丨时序数据库DolphinDB横截面引擎教程
  5. 别再造假数据了,来试试 Faker 这个库吧!
  6. Python 如何爬取实时变化的 WebSocket 数据
  7. Python排序算法[二]:测试数据的迷雾散去
  8. Python常用的数据存储方式有哪些?五种!
  9. NBA球员投篮数据可视化。

随机推荐

  1. android CTS测试全pass攻略
  2. Android的dumpsys命令
  3. Android中的Intent和Intent-filter总结
  4. Java for Android
  5. Android进程间通信(一):AIDL使用详解
  6. Android之父深入解析Android
  7. [置顶] android调用第三方库——第四篇—
  8. android 控件位置常用布局
  9. 流水笔记--2015-9-13
  10. Android野史系列:3.利用Android Studio开