Dev .

一切伟大的思想和行动都有一个微不足道的开始

从火箭少女101(创造101)了解爬虫——先导篇

在追《创造101》时,因嫌看数据太麻烦做了【创造101成员网络数据】,在《创造101》结束后,抽时间做了【火箭少女101数据中心】,有很多小伙伴问我一些相关的问题,为了不让自己每次重复回答,所有准备写这一个系列的文章。当然啦,其实这个东西十分简单,我也琢磨着怎么下笔才能产生内容。但在此之前,我需要说明的是:

一般而言我们需要遵守网站的robots协议,该协议在域名的根目录下通过 http://xxx.com/robots.txt 的形式访问。这个文件告诉了爬虫什么目录可以访问,什么目录不可以访问。但遗憾的是,有可能你需要访问的数据在这个文件禁止访问的行列里,这个时候就不必遵循了......

但做为一个有节操的爬虫作者,你应该严格控制爬虫获取数据的节奏,高并发的请求会给服务器带来巨大的压力和占用大量带宽,虽然服务器有相关防范措施,但我们也需要掌握好这个度,不然IP可能会被BAN。

整体结构

文章分为三大部分:

  • 从火箭少女101(创造101)了解爬虫——前端篇
  • 从火箭少女101(创造101)了解爬虫——爬虫篇
  • 从火箭少女101(创造101)了解爬虫——后端篇

前端篇大致分为DOM,正则相关。
爬虫篇大致分为Node爬虫及Python爬虫。
后端篇大致分为服务器、数据库、Nginx、CDN、接口相关。

需要说明的是,因为我本身是一个前端,所以JavaScript一把梭,那么正因如此,Node在这个里面是不可缺的一部分。那么下面也说说这个系列文章所用的技术栈。

  • 前端:Vue、Echarts
  • 爬虫:Node.js(request及puppeteer)
  • 后端:Koa2
  • 服务器:CentOS
  • 数据库:MySQL

当然,这个系列文章默认你已将基本掌握了HTML、CSS、JavaScript、Python,如果你是新人,那么这个系列文章可能不适合你,建议先了解以下相关内容:《JavaScript教程》《CSS教程》《HTML教程》《简明 Python 教程》,因为本系列文章所有示例都是使用ES6,所以你得基本会使用《ES6标准入门》