抓取网页数据工具(WebScraper的一个扩展插件,安装后你可以直接在F12调试工具里使用)

优采云 发布时间: 2021-11-19 01:00

  抓取网页数据工具(WebScraper的一个扩展插件,安装后你可以直接在F12调试工具里使用)

  我经常遇到一些简单的需求,需要在某个网站上爬取一些数据,但是这些页面的结构非常简单,数据量也比较少,虽然可以自己写代码来实现,但这很荒谬。大锤?

  市面上已经有一些成熟的零代码爬虫工具,比如优采云,有现成的模板可以使用,也可以自己定义一些爬虫规则。不过今天要介绍的是另一个神器——Web Scraper,它是Chrome浏览器的一个扩展。安装完成后可以直接在F12调试工具中使用。

  1. 安装网络爬虫

  有条件的可以直接到店里搜索Web Scraper安装

  

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

  

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

  

  2. 基本概念和操作

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

  站点地图

  直译,它是一个 网站 地图。有了这个地图爬虫,我们就可以跟随它来获取我们需要的数据。

  所以,sitemap其实可以理解为网站的爬虫程序。要抓取多个 网站 数据,必须定义多个站点地图。

  站点地图支持导出和导入,这意味着您编写的站点地图可以与他人共享。

  从下图可以看出,sitemap代码是一串JSON配置

  

  只要拿到这个配置,就可以导入其他人的站点地图

  

  选择器

  直译,它是一个选择器。为了从一个充满数据的 HTML 页面中检索数据,需要一个选择器来定位我们数据的特定位置。

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

  Web Scraper 提供的 Selector 有很多,但是本文 文章 只介绍了几个最常用、覆盖面最广的 Selector。了解一两个之后,其他的原理都差不多,以后私下多多学习。可以上手了。

  

  Web Scraper 使用 CSS 选择器来定位元素。如果你不知道,没关系。在大多数情况下,您可以通过鼠标单击直接选择元素。Web Scraper 会自动解析出对应的 CSS。小路。

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

  正是这种无休止的嵌套关系,让我们能够递归地抓取整个网站数据。

  下面是我们后面经常放的selector拓扑,可以用来直观的展示Web Scraper的爬取逻辑

  

  数据抓取和导出

  定义站点地图规则后,单击“抓取”开始抓取数据。

  数据被抓取后,不会立即显示在页面上。您需要手动单击刷新按钮才能查看数据。

  最终数据也可以导出为 csv 或 xlsx 文件。

  

  3. 寻呼机抓取

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

  寻呼机可以分为两种类型:

  在早期版本的 web-scraper 中,这两种抓取方式是不同的。

  对于一些网站来说已经足够了,但是它有很大的局限性。

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

  如果使用js*敏*感*词*事件,然后像下面这样跳转,就不能使用Link选择器了。

  

  在新版本的网页爬虫中,对导航分页器提供了特殊的支持,并且增加了一个分页选择器,可以完全适用于两种场景。下面我将分别演示。

  寻呼机抓取而不重新加载页面

  点击特定的CSDN博客文章,将其拉到底部以查看评论区。

  如果你的文章很火,当评论人很多的时候,CSDN会分页展示,但是不管评论在哪个页面,都属于同一篇文章文章 ,当你浏览任何页面的评论区时,博文不需要刷新,因为这种分页不会重新加载页面。

  

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

  

  最后十个必须注意的一个,要选择root和next_page,只有这样,才能递归爬取

  

  最终爬取效果如下

  

  使用Element Click的sitemap配置如下,可以直接导入我的配置进行研究(配置文件下载:)

  

  当然,对于分页之类的东西,网络爬虫提供了更专业的分页选择器。它的配置更加精简,效果最好。

  

  对应的sitemap配置如下,可以直接导入使用(配置文件下载:)

  

  要重新加载的页面的寻呼机抓取

  CSDN博客文章列表,拉到底部,点击特定页面按钮,否则最右边的下一页将重新加载当前页面。

  

  对于这种寻呼机,Element Click是无能为力的,读者可以自行验证,只能爬到一个页面后关闭。

  并且作为分页的Pagination选择器,自然适用

  

  爬取的拓扑同上,这里不再赘述。

  

  对应的sitemap配置如下,可以直接导入学习(配置文件下载:)

  

  4. 爬取二级页面

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

  如果想获取博文正文、点赞数、采集数、评论区内容等更多信息,必须点击具体博文链接查看

  

  网络爬虫的操作逻辑是与人相通的。如果您想获取博客文章的更详细信息,则必须打开一个新页面才能获取。网络爬虫的链接选择器恰好做到了这一点。

  

  爬取路径拓扑如下

  

  爬取的效果如下

  

  sitemap配置如下,可以直接导入使用(配置文件下载:)

  

  5. 写在最后

  以上对分页和二级页面的抓取方案进行了梳理,主要有:pager抓取和二级页面抓取。

  只要学会了这两个,你就已经可以处理大部分结构化的网络数据了。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线