美文网首页
Web Scraper教程(四)爬虫进阶之知乎热点的滚动加载爬取

Web Scraper教程(四)爬虫进阶之知乎热点的滚动加载爬取

作者: iDataFly | 来源:发表于2020-05-05 17:15 被阅读0次
进阶知识点:

滚动到页面底部才会加载新内容的页面爬取
查看结构图,理解选择器结点的关系

一、如何在知乎追热点

B站凭借《后浪》又一次在朋友圈刷屏,对于媒体人,蹭热点不难,难的是从新颖的角度追热点。知乎就是很好的素材库,不仅有不同的观点、角度,还有与社会新闻和身边故事的关联,可谓有血有肉。
所以,今天就讲解如何在知乎爬取「后浪」相关的问题,从赞同数和评论数筛选能够引起读者共鸣的观点。

二、爬取知乎关于「后浪」的问题

1. 在知乎搜索「后浪」,创建Sitemap

Sitemap name: zhihu
Start URL: https://www.zhihu.com/search?q=%E5%90%8E%E6%B5%AA&type=content

2. 建立滚动页面选择器,在爬取前让页面滚动至底部完成信息加载

在爬取数据前,先观察页面特征。知乎搜索结果页的特征是:要将滚动条拖至底部,才会加载出新的内容(如下图),所以要不断拖动,直到全部加载之后,才能开始爬取数据,否则,爬取结果会有缺失。

知乎等待加载的内容

建立滚动选择器
Id: scroll
Type: Element scroll down
点击Select: 点选时避开了前三条问题,直接点选第4条和第5条,因为前三条专属于「热点」区域,如果点选了「热点」中的第1条和第2条,会发现「热点」以下的问题不会变为红色,证明「热点」之外的问题属于其他区域,而本次需要爬取的正是其他区域中的内容
点击Multiple
点击Done selecting!完成建立

3. 建立内容爬取选择器

建立question选择器,作为字段容器
如果对于这一步不理解,可以查看教程三的图示
Id: question
Type: Element
Select: 与滚动器一样,点选第4条和第5条
点击Multiple
点击Done selecting!完成建立

在字段容器中,建立标题、赞同数、评论数的选择器
因为步骤相同,以下配置按「标题、赞同数、评论数」的顺序,用/隔开
Id: title/agree/comment
Type: Text
Select: 点选黄色区域的标题/赞同数评论数
点击Done selecting!完成建立

标题(title)
赞同数(agree)
评论数(comment)
4. 执行爬虫程序

因执行需要一定时间,动态图截掉了部分程序执行过程,操作时请耐心等待

5. 查看选择器结点结构图

结构图能够清晰地呈现程序的内容:
「_root」: 表示根结点,代表程序即将开始
「scroll」: 是本程序的第一个结点,表示页面先滚动至底部
「question」: 是字段的容器,其分支表示了包含的字段结点

相关文章

网友评论

      本文标题:Web Scraper教程(四)爬虫进阶之知乎热点的滚动加载爬取

      本文链接:https://www.haomeiwen.com/subject/owdmghtx.html