在一家能从业务里源源不断产生数据的公司工作是一件很幸福的事情,但很多人如我就没有这样幸运。没有数据又想蹭住人工智能的风口,一种方法是潜心学术研究算法,但用来做实验的数据往往都是学术界或者一些好心的工业界提供的低配版数据,练就的屠龙刀倚天剑离实战还有很多距离;另一种方法就是费尽心机寻找真实数据。在聊(已经学不动的)各种神乎其技的算法之余,我也想简单总结下那些年我们写爬虫的经验。
甄选网站
写爬虫之前先要从需求出发寻找合适的目标网站和数据源。
首先,能有API调用或者能从别的渠道买到的数据就尽量别再自己写爬虫了。除非目标网站的数据非常容易爬,否则写爬虫是一个非常繁琐且需要长期斗争的体力活。从各个IT大厂的云服务,到一些爬虫起家的数据公司,甚至在某宝上面,都有大量的API或者数据的服务。首选API的服务因为一般数据提供商会按照API调用次数收费,配合API的query条件可以比较好满足自己的特定需求,数据提供商一般也会保持数据更新;如果是直接买数据一开始报价中就要谈好更新数据的后续报价。
几个数据源的例子,比如百度数据开放平台:
香港政府的资料一线通(更新很快,最新的冠状病毒数据也已经传在上面并且保持更新):