【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。

举报
梦想橡皮擦 发表于 2021/04/22 22:42:38 2021/04/22
【摘要】 今天是持续写作的第 18 / 100 天。 如果你有想要交流的想法、技术,欢迎在评论区留言。 本篇博客将带你解决网页加载更多按钮点击的问题,学习之后,你只需点点鼠标,数据就可以快速存储到本地。 此类教程涉及图片比较多,学习的时候大量的依赖实操,所以在后续本系列内容将转换为视频载体提供给大家。 缓解一下视疲劳 缓解一下视疲劳 ...

今天是持续写作的第 18 / 100 天。
如果你有想要交流的想法、技术,欢迎在评论区留言。

本篇博客将带你解决网页加载更多按钮点击的问题,学习之后,你只需点点鼠标,数据就可以快速存储到本地。
此类教程涉及图片比较多,学习的时候大量的依赖实操,所以在后续本系列内容将转换为视频载体提供给大家。

缓解一下视疲劳

【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。

缓解一下视疲劳

在这里插入图片描述

目标网站分析

本次要抓取的网站为:产品 100,该网站最大的特点是点击【加载更多】按钮会加载数据,类似的网站非常多,Web Scraper 对于该种类型的网站解决办法是一致的。

【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。

本案例最终希望获得的数据为下图框选区域,分别是标题 title、描述 des、作者 author、浏览 view、评论 comment、点赞 like
【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。
简单分析之后就可以开始通过 Web Scraper 进行爬虫程序的编写了。

点鼠标写爬虫

第一步,创建 sitemap

写入 sitemap 名称与 start url,完成初审内容的创建,因为是通过加载更多按钮获取数据,所以 start url 不需要设置分页。
【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。

第二步,添加 Element 选择器

添加 Element 选择器这里需要掌握一个新的知识了,咱选择的是 Element click,这个就是加载更多(有可能会叫其它名字)按钮。
【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。
关于 Element Click 官方文档给出的说明是。

Element click selector works similarly to Element selector. It’s main purpose also is element selection that could be given as parent elements to its child selectors. The only difference is that Element click selector can interact with the web page by clicking on buttons to load new elements. For example a page might use JavaScript and AJAX for pagination or item loading.

英语水平很高的橡皮擦要进行翻译了:

Element click 跟之前学习的 Element 差不多,主要用于选择网页元素,一般目的就是当做父标签去选择子标签,这个与之前学到的 Element 最大的区别就是支持点击加载更多这样的按钮。

还有一个需要注意的是,选择加载更多按钮的时候,用键盘上的 S 进行选择,为啥啊?因为在 [加载更多] 按钮上点击鼠标左键,很容易就 [加载更多] 数据了。

选择该 Type 之后,多出一些内容,具体如下图所示。
【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。
以上内容分别是。

  1. Click selector 选择加载更多按钮;
  2. Click type 点击类型,可以点击多次,也可以点击一次,本案例请选择 Click more;
  3. Click element uniqueness 何时停止抓取数据,一般会选择 Unique Text,表示按钮文字更换就停止,本案例到最后就是 加载更多 按钮变为 没有更多 了,此时数据就会停止抓取;
  4. Discard initial elements 是否丢弃初始数据,保持默认就可以;
  5. Delay 延迟时间,点击加载更多之后的等待时间,一般设置 1~2 秒即可。

第三步,配置好所有参数

有了上述基础知识后,就可以进行参数配置了,配置完毕如下图所示。原 Selector 依旧按照 Element 选择方式框选目标数据所在区域即可。
【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。

第四步,选择子元素

父级元素已经确定,接下来选择子元素,按照下图所示进入子元素添加页面。
【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。
依次将目标数据需要的内容全部设置完毕。
【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。
调整一下浏览量参数,id 最少为 3 个字符。
【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。

第五步,查看爬虫结构

爬虫的结构在爬取之前建议大家都核对一下,确保没啥问题,在进行爬虫程序的启动。
【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。

第六步,运行爬虫

使用 Scrape 将爬虫启动,等待数据进入篮子里面来。结果发现运行一次就停止了,查阅爬虫程序之后发现是下图设置的问题,Click type 修改为 Click more。
【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。
运行一段时间之后,得到数据如下。
【黑科技】爬虫也可以一键获取 [加载更多] 数据,无编码学爬虫之三。

写在后面

本文之后,对于 Web Scraper 你肯定会多一些喜欢,毕竟手动编写代码处理有 [加载更多] 按钮的网站,有时候会碰到一些麻烦,爬虫不是很好写,而掌握了 Web Scraper 之后,这种类型的网站会变成通解。

想学 Python 编写语言写爬虫,可以订阅橡皮擦专栏哦~

🈲🈲🈲🈲 《爬虫百例教程》点击发现惊喜 🈲🈲🈲🈲


如果你想跟博主建立亲密关系,可以关注同名公众号 梦想橡皮擦,近距离接触一个逗趣的互联网高级网虫。
博主 ID:梦想橡皮擦,希望大家点赞评论收藏

文章来源: blog.csdn.net,作者:梦想橡皮擦,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/hihell/article/details/110861330

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。