web scraper 里的 Element click 模拟点击「加载更多」

今天我们讲的,就是利用 web scraper 里的 Element click 模拟点击「加载更多」,去加载更多的数据。

这次的练习网站,我们拿少数派网站的热门文章作为我们的练习对象,对应的网址链接是:

https://sspai.com/matrix

为了复习上一个小节的内容,这次我们模拟点击翻页的同时,还要抓取多条内容,包括作者、标题、点赞数和评论数。

web scraper 里的 Element click 模拟点击「加载更多」

下面开始我们的数据采集之路。

2019-12-22 补充:
少数派官网改版,和我当初写教程的时抓取的网站有些许不同,主要改动有以下几点:

  • 「加载更多」按钮改为「更多」按钮,而且在网页全屏的情况下改为下拉自动加载,网页宽度半屏的情况下为点击「更多」按钮翻页,建议大家在半屏的情况下练习
  • 只能抓取作者、标题和点赞数这 3 个数据,无法抓取评论数
  • 网页 UI 样式有些许改动,但逻辑都是相通的,不影响教程学习和数据抓取

 

1.创建 sitmap

老规矩,第一步我们先创建一个少数派的 sitmap,取名为 sspai_m,起始链接为https://sspai.com/matrix

2.创建容器的 selector

通过上一节的内容,我们知道想在 web scraper 里想抓取多种类型的数据,必须先创建一个容器(container),这个容器包含多种类型的数据,所以我们第二步就是要创建容器的 selector。

要注意的是,这个 selector 的 Type 类型选为 Element click,翻译成中文就是模拟点击元素,意如其名,我们可以利用这种类型模拟点击「加载更多」按钮。

web scraper 里的 Element click 模拟点击「加载更多」

 

这种类型的 selector,会多出几个选项,第一个就是 Click selector,这个就是选择「加载更多」按钮的,具体操作可见下图的动图。

web scraper 里的 Element click 模拟点击「加载更多」

还有几个多出来的选项,我们一一解释一下:

 

web scraper 里的 Element click 模拟点击「加载更多」

上一篇:Egg.js基础教程


下一篇:Android 虚拟机:你需要掌握的基本知识