爬虫需要掌握的前端知识(零代码爬虫神器)
爬虫需要掌握的前端知识(零代码爬虫神器)
2024-11-21 10:37:16  作者:为你暖被窝  网址:https://m.xinb2b.cn/sport/zdy199518.html

经常会遇到一些简单的需求,需要爬取某网站上的一些数据,但这些页面的结构非常的简单,并且数据量比较小,自己写代码固然可以实现,但杀鸡焉用牛刀?

目前市面上已经有一些比较成熟的零代码爬虫工具,比如说八爪鱼,有现成的模板可以使用,同时也可以自己定义一些抓取规则。但我今天要介绍的是另外一个神器 -- Web Scraper,它是 Chrome 浏览器的一个扩展插件,安装后你可以直接在F12调试工具里使用它。

# 1. 安装 Web Scraper

有条件的同学,可以直接在商店里搜索 Web Scraper 安装它


没有条件的同学,可以来这个网站(https://crxdl.com/)下载 crx 文件,再离线安装,具体方法可借助搜索引擎解决


安装好后,需要重启一次 Chrome, 然后 F12 就可以看到该工具


# 2. 基本概念与操作

在使用 Web Scraper 之前,需要讲解一下它的一些基本概念:

sitemap

直译起来是网站地图,有了该地图爬虫就可以顺着它获取到我们所需的数据。

因此 sitemap 其实就可以理解为一个网站的爬虫程序,要爬取多个网站数据,就要定义多个 sitemap。

sitemap 是支持导出和导入的,这意味着,你写的 sitemap 可以分享给其他人使用的。

从下图可以看到 sitemap 代码就是一串 JSON 配置


只要拿到这个配置你就可以导入别人的 sitemap


Selector

直译起来是选择器,从一个布满数据的 HTML 页面中去取出数据,就需要选择器去定位我们的数据的具体位置。

每一个 Selector 可以获取一个数据,要取多个数据就需要定位多个 Selector。

Web Scraper 提供的 Selector 有很多,但本篇文章只介绍几种使用频率最高,覆盖范围最广的 Selector,了解了一两种之后,其他的原理大同小异,私下再了解一下很快就能上手。


Web Scraper 使用的是 CSS 选择器来定位元素,如果你不知道它,也无大碍,在大部分场景上,你可以直接用鼠标点选的方式选中元素, Web Scraper 会自动解析出对应的 CSS 路径。

Selector 是可以嵌套的,子 Selector 的 CSS 选择器作用域就是父 Selector。

正是有了这种无穷无尽的嵌套关系,才让我们可以递归爬取整个网站的数据。

如下就是后面我们会经常放的 选择器拓扑,利用它可以直观的展示 Web Scraper 的爬取逻辑


数据爬取与导出

在定义好你的 sitemap 规则后,点击 Scrape 就可以开始爬取数据。

爬取完数据后,不会立马显示在页面上,需要你再手动点击一下 refresh 按钮,才能看到数据。

最后数据同样是可以导出为 csv 或者 xlsx 文件。


# 3. 分页器的爬取

爬取数据最经典的模型就是列表、分页、详情,接下来我也将围绕这个方向,以爬取 CSDN 博客文章去介绍几个 Selector 的用法。

分页器可以分为两种:

一种是,点 下一页 就会重新加载一个页面

一种是:点 下一页 只是当前页面的部分内容重新渲染

在早期的 web-scraper 版本中,这两种的爬取方法有所不同。

对于需要重新加载页面的,需要 Link 选择器

对于不需要重新加载页面的,可以使用 Element Click 选择器

对于某些网站的确是够用了,但却有很大的局限性。

经过我的试验,第一种使用 Link 选择器的原理就是取出 下一页的 a 标签的超链接,然后去访问,但并不是所有网站的下一页都是通过 a 标签实现。

像下面这样用 js 监听事件然后跳转的,就无法使用 Link 选择器 。


而在新版的 web scraper ,对导航分页器提供了特别的支持,加了一个 Pagination的选择器,可以完全适用两种场景,下面我会分别演示。

不重载页面的分页器爬取

点入具体一篇 CSDN 博文,拉到底部,就能看到评论区。

如果你的文章比较火,评论的同学很多的时候,CSDN 会对其进行分页展示,但不论在哪一页的评论,他们都隶属于同一篇文章,当你浏览任意一页的评论区时,博文没有必要刷新,因为这种分页并不会重载页面。


对于这种不需要重载页面的点击,完全可以使用 Element Click 来解决。


其中最后一点千万注意,要选择 root 和 next_page,只有这样,才能递归爬取

最后爬取的效果如下


使用 Element Click 的 sitemap 配置如下,你可以直接导入我的配置进行研究,配置文件下载:https://wwe.lanzoui.com/iidSSwghkch


当然啦,对于分页这种事情,web scraper 提供了更专业的 Pagination选择器,它的配置更为精简,效果也最好


对应的 sitemap 的配置如下,你可以直接导入使用 ,配置文件下载:https://wwe.lanzoui.com/iidSSwghkch


要重载页面的分页器爬取

CSDN 的博客文章列表,拉到底部,点击具体的页面按钮,或者最右边的下一页就会重载当前的页面。


而对于这种分页器,Element Click 就无能为力了,读者可自行验证一下,最多只能爬取一页就会关闭了。

而作为为分页而生的 Pagination 选择器自然是适用的


爬取的拓扑与上面都是一样的,这里不再赘述。


对应的 sitemap 的配置如下,你可以直接导入去学习,配置文件下载:https://wwe.lanzoui.com/iidSSwghkch


# 4. 二级页面的爬取

CSDN 的博客列表列表页,展示的信息比较粗糙,只有标题、发表时间、阅读量、评论数,是否原创。

想要获取更多的信息,诸如博文的正文、点赞数、收藏数、评论区内容,就得点进去具体的博文链接进行查看


web scraper 的操作逻辑与人是相通的,想要抓取更多博文的详细信息,就得打开一个新的页面去获取,而 web scraper 的 Link 选择器恰好就是做这个事情的。


爬取路径拓扑如下


爬取的效果如下


sitemap 的配置如下,你可以直接导入使用,配置文件下载:https://wwe.lanzoui.com/iidSSwghkch


# 5. 写在最后

上面梳理了分页与二级页面的爬取方案,主要是:分页器抓取和二级页面抓取。

只要学会了这两个,你就已经可以应对绝大多数的结构性网页数据了。

例如你可以爬取自己发表在 CSDN 上的所有博文信息,包括:标题、链接、文章内容、阅读数,评论数、点赞数,收藏数。

当然想要用好 web scraper 这个零代码爬取工具,你可能需要有一些基础,比如:

CSS 选择器的知识:如何抓取元素的属性,如何抓取第 n 个元素,如何抓取指定数量的元素?

正则表达式的知识:如何对抓取的内容进行初步加工?

受限于篇幅,我尽量讲 web scraper 最核心的操作,其他的基础内容只能由大家自行充电学习了。

  • 乌鸡种翡翠的特征(什么是乌鸡种翡翠)
  • 2024-11-22什么是乌鸡种翡翠1、乌鸡种的翡翠指的就是颜色接近黑皮乌鸡的翡翠,这种翡翠与黑色翡翠容易混淆2、乌鸡种翡翠大体呈灰黑色至黑色,色调不是太均匀,有玻璃光泽,微透明到不透明,市面上种水好的乌鸡种翡翠十分少见3、乌鸡种翡翠主。
  • 桑椹干泡水喝的功效(医生这样说)
  • 2024-11-22医生这样说功效主要是清凉滋润,具有这个补肝益肾、生津润肠、乌发明目、止渴解毒桑葚干,桑葚干有什么功效和作用,桑葚干顾名思义,就是把桑葚里边的水分蒸发掉,这种制剂我们叫桑葚干,桑葚干它的性味是甘酸的、微寒,归肝经。
  • 吃什么对牙齿好可以美白牙齿(牙齿变黄是什么原因)
  • 2024-11-22牙齿变黄是什么原因日常生活中,我们会发现自己的牙齿不知不觉就发黄了发黄的牙齿不仅影响了我们的形象,还为我们的口腔健康埋下了隐患那么牙齿变黄是什么原因呢?  牙齿发黄的原因  牙齿发黄有很多原因,其中最主要的原因有外源性。
  • 怎样做正宗的寿司(你还在外面买寿司吗)
  • 2024-11-22你还在外面买寿司吗说起寿司大家应该都不陌生,是日本的经典料理,种类和口味繁多,但荤素搭配营养均衡,而且制作方法特别方便,很适合没有太多业余时间的上班族哦!寿司不仅可以作为主食还可以当做零食来吃,不喜欢吃饭和蔬菜的小朋友。
  • 为什么阉猪容易阉鸡难(阉猪时猪叫声震天响)
  • 2024-11-22阉猪时猪叫声震天响相信有很多人都听过“猪草包,羊好汉”这句话,意思是说猪被捆绑宰杀或者阉割的时候,会剧烈挣扎,但是羊被宰杀或者阉割时却异常的淡定,仿佛刀根本没有割在它身上所以,很多人认为羊是没有痛感或者对疼痛忍耐度很高。
  • 两个动物的成语有哪些(两个动物的成语具体有哪些)
  • 2024-11-22两个动物的成语具体有哪些鼠肚鸡肠:比喻气量狭小,只考虑小事,不顾大体鼠窜狼奔:形容狼狈逃跑的情景鼠窃狗盗:像老鼠少量窃取,象狗钻油偷盗指小偷小摸牛鬼蛇神:原形容虚幻怪诞后比喻社会上形形色色的坏人牛鼎烹鸡:用煮一头牛的大锅煮一。
  • 关于努力上进励志的简短语录(激励人努力上进的话)
  • 2024-11-22激励人努力上进的话一、每个人都有梦想,或大或小在追逐梦想的路上,我们总会遇见艰难和困扰,只要我们的脚步不停留,胜利就是比谁坚持的久只要你不颓废,不消极,一直悄悄酝酿着乐观,培养着豁达,坚持着善良,只要在路上,就没有到达。
  • 保险数据治理目标(重装上阵险企数据合规与安全)
  • 2024-11-22重装上阵险企数据合规与安全前不久,王女士接到一家保险自媒体工作人员来电,称注意到她所投保的一款意外险即将到期,希望帮她办理续保业务王女士很疑惑,她都没有关注过这个微信公众号,保单信息是怎么泄露的在她的再三追问下,工作人员才说,。
  • 柳永最短的词是什么(柳永写了一首清明词)
  • 2024-11-22柳永写了一首清明词文/蓝梦岛主原创文章,已开启全网维权,抄袭必究!清明时分,春意萌动,万物复苏,草长莺飞,红情绿意,如此节气,如此风景,很容易激发灵感,成就佳作古往今来,诞生了很多流传千古的清明名篇,其中尤以杜牧的《清。
  • 山姆超市牛肉饼做法
  • 2024-11-22山姆超市牛肉饼做法所用材料:牛肉末300克,高筋面粉500克,葱花5克,花椒粉2克,五香粉2克,盐2克清水20毫升,食用油5毫升方法:1:牛肉加入料酒去腥2:倒入牛肉末、葱花、花椒粉、五香粉、盐,搅拌均匀,腌制30分钟。
  • 高五笔怎么打(高字五笔如何打)
  • 2024-11-22高字五笔如何打高五笔怎么打:高五笔:YMKF高基本释义:(1)从下向上距离大;离地面远(跟“低”相同):高楼大厦这里地势很高(2)高度:那棵树有五米高书桌高八十厘米(3)三角形、平行四边形等从底部到顶部(顶点或平行。