项目背景及意义
2020年春节突如其来的新冠疫情打乱了很多人的阵脚,网络上各类相关信息也让人目不暇接。各个国家各个地区之间的疫情状况比较这样的统计分析型信息往往由文字简单描述,不够直观。在这样的背景下,我们项目组希望能够做一个统一的疫情实况平台,可以根据需求展示想看地区的当日数据,也可以通过动态图或折线图之类的方式去横向纵向地比较在不同地区不同时间下的疫情状况变化,给用户一个直观方便的体验。
数据源的讨论
为了让我们软件的数据更加真实准确,一个好的数据源必不可少,为此我们分别去网上寻找了不同的数据源,并且对比了之间的优缺点,选择出一个比较好的提案。以下是我在网上搜寻找到的一些数据源,经过跟小组成员讨论比较,我们最终确定使用网易的数据源。
1. 丁香园疫情数据
丁香园的数据按天进行更新,也都是汇总类型数据,在需求上与以上我们想要做的展示数据基本是符合的,它的疫情数据可以直接页面右键显示源代码来进行分析爬取,非常方便快捷。它以时间流的方式进行更新,方便我们对其进行使用。
但它的数据主要为统计汇总型数据,要查找实时数据采用这类数据源很方便,但想要看之前某段时间内的数据的话,这类数据源就很难满足要求,因为它不会保留之前某天的具体新增数据,而是全部加在一起的累计数据,所以我们经过讨论之后放弃了该数据源。
2. 腾讯和网易官方维护的疫情数据
腾讯和网易可以说是国内比较靠谱的大企业了,他们两家的数据可以保证其可靠性,并且这两个数据源的获取方式很类似,数据源类型也几乎相同,所以放在一起说。它们的疫情数据是通过网页请求其他url,返回json格式的数据再根据用户需求渲染到网页上显示。检查开发者工具中的Network项可以得到,相对来说比较容易获取。
不过腾讯的数据源也需要处理一个用户登录操作,经过我们的试验,这个登录有时需要验证码,有时不需要,给我们项目的编写带来了困难。而网易是直接将数据源接口给出来的,不需要登录也不检验,使用起来相对方便,考虑到二者数据类型更新频率都相似,所以相较之下网易更好一些。
从零开始的爬虫之旅
在写这个项目之前,我对爬虫这个词仅仅停留在概念方面,因此在开始编写项目之前,我先自主学习了爬虫的相关知识。