网页数据抓取工具 (谷歌插件 web Scraper)

article/2025/9/30 3:46:37

最简单的数据抓取教程,人人都用得上

Web Scraper 是一款免费的,适用于普通用户(不需要专业 IT 技术的)的爬虫工具,可以方便的通过鼠标和简单配置获取你所想要数据。例如知乎回答列表、微博热门、微博评论、电商网站商品信息、博客文章列表等等。

安装过程

  • 在线安装方式

在线安装需要具有可FQ网络,可访问 Chrome 应用商店

1、在线访问 web Scraper 插件 ,点击 “添加至 CHROME”。

1.png

2、然后点击弹出框中的“添加扩展程序”

2.png

3、安装完成后在顶部工具栏显示 Web Scraper 的图标。

3.png

  • 本地安装方式

 

1、打开 Chrome,在地址栏输入 chrome://extensions/ ,进入扩展程序管理界面,然后将下载好的扩展插件 Web-Scraper_v0.3.7.crx 拖拽到此页面,点击“添加到扩展程序”即可完成安装。如图:

4.gif

2、安装完成后在顶部工具栏显示 Web Scraper 的图标。

3.png

初识 web scraper

打开 Web Scraper

开发人员可以路过看后面了

windows 系统下可以使用快捷键 F12,有的型号的笔记本需要按 Fn+F12;

Mac 系统下可以使用快捷键 command+option+i ;

也可以直接在 Chrome 界面上操作,点击设置—>更多工具—>开发者工具

5.png

打开后的效果如下,其中绿色框部分是开发者工具的完整界面,红色框部分是 Web Scraper 区域,也就是我们之后要操作的部分。

6.png

注意:如果打开开发者工具在浏览器的右侧区域,则需要调节开发者工具位置到浏览器底部。

7.gif

原理及功能说明

数据爬取的思路一般可以简单概括如下:

1、通过一个或多个入口地址,获取初始数据。例如一个文章列表页,或者具有某种规则的页面,例如带有分页的列表页;

2、根据入口页面的某些信息,例如链接指向,进入下一级页面,获取必要信息;

3、根据上一级的链接继续进入下一层,获取必要信息(此步骤可以无限循环下去);

原理大致如此,接下来正式认识一下 Web Scraper 这个工具,来,打开开发者工具,点到 Web Scraper 这个标签栏,看到分为三个部分:

8.png

Create new sitemap:首先理解 sitemap ,字面意思网站地图,这里可以理解为一个入口地址,可以理解为其对应一个网站,对应一个需求,假设要获取知乎上的一个问题的回答,就创建一个 sitemap ,并将这个问题所在的地址设置为sitemap 的 Start URL,然后点击 “Create Sitemap”即可创建一个 sitemap。

9.png

Sitemaps:sitemap 的集合,所有创建过的 sitemap 都会在这里显示,并且可以在这里进入一个 sitemap 进行修改和数据抓取等操作。

10.png

Sitemap:进入某个 sitemap ,可以进行一系列的操作,如下图:

11.png

其中红色框部分 Add new selector 是必不可少的步骤。selector 是什么呢,字面意思:选择器,一个选择器对应网页上的一部分区域,也就是包含我们要收集的数据的部分。

需要解释一下,一个 sitemap 下可以有多个 selector,每个 selector 有可以包含子 selector ,一个 selector 可以只对应一个标题,也可以对应一整个区域,此区域可能包含标题、副标题、作者信息、内容等等信息。

Selectors:查看所有的选择器。

Selector graph:查看当前 sitemap 的拓扑结构图,根节点是什么,包含几个选择器,选择器下包含的子选择器。

Edit metadata:可以修改 sitemap 信息,标题和起始地址。

Scrape:开始数据抓取工作。

Export data as CSV:将抓取的数据以 CSV 格式导出。

到这里,有一个简单的认识就可以了,实践出真知,具体的操作案例才具有说服力,下面就以几个例子来说一说具体的用法。

案例实践

简单试水 hao123

由浅入深,先以一个最简单的例子为入口,只是作为进一步认识 Web Scraper 服务

需求背景:看到下面 hao123 页面中红色框住的部分了吧,我们的需求就是统计这部分区域中的所有网站名称和链接地址,最后以生成到 Excel 中。 因为这部分内容足够简单,当然真正的需求可能比这复杂,这么几个数据手工统计的时间也很快。

12.png

开始操作

1、假设我们已经打开了 hao123 页面,并且在此页面的底部打开了开发者工具,并且定位到了 Web Scraper 标签栏;

2、点击“Create Sitemap”;

13.png

3、之后输入 sitemap 名称和 start url,名称只为方便我们标记,就命名为hao123(注意,不支持中文),start url 就是hao123的网址,然后点击 create sitemap;

14.png

4、之后 Web Scraper 自动定位到这个 sitemap,接下来我们添加一个选择器,点击“add new selector”;

15.png

5、首先给这个 selector 指定一个 id,就是一个便于识别 名字而已,我这里命名为 hot。因为要获取名称和链接,所以将Type 设置为 Link,这个类型就是专门为网页链接准备的,选择 Link 类型后,会自动提取名称和链接两个属性;

16.png

6、之后点击 select ,然后我们在网页上移动光标,会发现光标所到之处会有颜色变化,变成绿色的,表示就是我么当前选择的区域。我们将光标定位到需求里说的那一栏的某个链接处,例如第一个头条新闻,在此处单击,这个部分就会变成红色,说明已经选中了,我们的目的是要选多个,所以选中这个之后,继续选第二个,我们会发现,这一行的链接都变成了红色,没错,这就是我们要的效果。然后点击"Done selecting!"(data preview是选中元素的标识符,可手动修改,通过class 、元素名称来确定元素 如:div.p_name a),最后别忘了勾选 Multiple ,表示要采集多条数据;

17.png

7、最后保存,save selector。点击Element preview 可以预览选择的区域,点击 Data preview 可以在浏览器里预览抓取的数据。 后面的文本框里的内容,对于懂技术的同学来说很清楚,这就是 xpath,我们可以不通过鼠标操作,直接手写 xpath 也可以;

完整操作过程如下:

18.gif

8、上一步操作完,其实就可以导出了。先别急,看一下其他的操作,Sitemap hao123 下的 Selector graph,可以看出拓扑结构图,_root 是根 selector ,创建一个 sitemap 自动会有一个 _root 节点,可以看到它的子 selector,就是我们创建的 hot selector;

19.png

9、Scrape ,开始抓取数据。

10、Sitemap hao123 下的 Browse ,可以通过浏览器直接查看抓取的最后结果,需要再;

20.png

11、最后,使用 Export data as CSV,以 CSV 格式导出,其中 hot 列是标题,hot-href 列是链接;

21.png

怎么样,赶紧试一下吧

抓取知乎问题所有回答

简单的介绍完了,接下来试一个有些难度的,抓取一个知乎问题的所有答案,包括回答者昵称、赞同数量、回答内容。问题:为什么鲜有炫富的程序员?

知乎的特点是,页面向下滚动才会加载后面的回答

1、首先还是在 Chrome 中打开这个链接,链接地址为:https://www.zhihu.com/question/30692237,并调出开发者工具,定位到 Web Scraper 标签栏;

2、Create new sitemap,填写 sitemap name 和 start url;

22.png

3、接下来,开始添加选择器,点击 Add new selector;

4、先来分析一下知乎问题的结构,如图,一个问题由多个这种区域组成,一个区域就是一个回答,这个回答区域包括了昵称、赞同数、回答内容和发布时间等。红色框住的部分就是我们要抓取的内容。所以我们抓取数据的逻辑是这样的:由入口页进入,获取当前页面已加载的回答,找到一个回答区域,提取里面的昵称、赞同数、回答内容,之后依次向下执行,当已加载的区域获取完成,模拟向下滚动鼠标,加载后续的部分,一直循环往复,直到全部加载完毕;

23.png

5、内容结构的拓扑图如下,_root 根节点下包含若干个回答区域,每个区域下包含昵称、赞同数、回答内容;

24.png

6、按照上面这个拓扑图,开始来创建选择器,填写 selector id 为 answer(随意填),Type 选择 Element scroll down 。解释一下:Element 就是针对这种大范围区域的,这个区域还要包含子元素,回答区域就对应 Element,因为要从这个区域获取我们所需的数据,而 Element scroll down 是说这个区域利用向下滚动的方式可以加载更多出来,就是针对这种下拉加载的情况专门设计的。

25.png

7、接下来点击 Select,然后鼠标到页面上来,让当绿色框框住一个回答区域后点击鼠标,然后移动到下一个回答,同样当绿色框框住一个回答区域后点击鼠标。这时,除了这两个回答外,所有的回答区域都变成了红色框,然后点击"Done selecting!”,最后别忘了选择 Multiple ,之后保存;

26.gif

8、接下来,单击红色区域,进入刚刚创建的 answer 选择器中,创建子选择器;

27.png

9、创建昵称选择器,设置 id 为 name,Type 设置为 Text,Select 选择昵称部分,如果没经验的话,可能第一次选的不准,发现有错误,可以调整,保存即可;

28.gif

10、创建赞同数选择器;

29.gif

11、创建内容选择器,由于内容是带有格式的并且较长,所以有个技巧,从下面选择会比较方便;

30.gif

12、执行 Scrape 操作,由于内容较多,可能需要几分钟的时间,如果是为了做测试,可以找一个回答数较少的问题做测试。

31.png


http://chatgpt.dhexx.cn/article/EMxQKv70.shtml

相关文章

国内五大主流网站内容抓取工具/采集软件大盘点

大数据技术用了多年时间进行演化,才从一种看起来很炫酷的新技术变成了企业在生产经营中实际部署的服务。其中,数据采集产品迎来了广阔的市场前景,无论国内外,市面上都出现了许多技术不一、良莠不齐的采集软件。 今天,我…

排名前20的网页爬虫工具

网络爬虫在许多领域都有广泛的应用,它的目标是从网站获取新的数据,并加以存储以方便访问。而网络爬虫工具越来越为人们所熟知,因为它能简化并自动化整个爬虫过程,使每个人都可以轻松访问网络数据资源。 1. Octoparse Octoparse是一个免费且功能强大的网站爬虫工具,用于从网…

2020年30种最佳的免费网页爬虫软件

原文链接:2020年30种最佳的免费网页爬虫软件 网页抓取(也称为网络数据提取,网络爬虫,数据收集和提取)是一种网页技术,从网站上提取数据。将非结构化数据转换为可以存储在本地计算机或数据库中的结构化数据…

12款最常使用的网络爬虫工具推荐

网络爬虫在当今的许多领域得到广泛应用。它的作用是从任何网站获取特定的或更新的数据并存储下来。网络爬虫工具越来越为人所熟知,因为网络爬虫简化并自动化了整个爬取过程,使每个人都可以轻松访问网站数据资源。使用网络爬虫工具可以让人们免于重复打字…

推荐15款免费的网页抓取软件

网页抓取(也称为网络数据提取或网页爬取)是指从网上获取数据,并将获取到的非结构化数据转化为结构化的数据,最终可以将数据存储到本地计算机或数据库的一种技术。 网页抓取是通过抓取软件实现的。当你在使用浏览器如Chorme浏览页面…

IPMI22:ipmi——ipmitool使用

简介 ipmitool是一个实用程序,用于监视、配置和管理支持智能平台管理接口 (IPMI) 的工具,遵循ipmi协议。它是一个开源项目,项目官网:https://sourceforge.net/projects/ipmitool/,github地址:https://gith…

从入门到精通:IPMITool 的详尽指南

简介:分享一款非常实用的服务器管理工具——IPMITool。许多从事服务器管理的朋友可能已经对这款工具有所了解,但对于初入这个领域的朋友们,它可能仍然有些陌生。本文将带领你从了解IPMITool的基本概念开始,逐步深入到其实际应用中…

ipmitool常用命令详解

ipmitool命令 ipmitool –I [open|lan|lanplus] command OpenIPMI接口,command有以下项: raw:发送一个原始的IPMI请求,并且打印回复信息。 lan:配置网络(lan)信道(channel) chassis &#xf…

如何自己实现字符串拷贝函数

一般写法: char *my_strcpy(char *dst,const char *src) {assert(dst ! NULL);assert(src ! NULL);char *ret dst;while((* dst * src) ! \0) // 运算符优先级高于*;return ret; } 可以看到很简单,只需考虑三点。 1,判断源字符串和目的字…

C语言 字符串-字符串的复制

字符串复制函数: strcpy(目标字符串的首地址,被复制的字符串的首地址) 复制p到a: char * p"12345";char a[20];strcpy(a, p);printf("%s\n", a); strcpy_s(目标字符串的首地址,缓冲长度,被复制的字符串的首地址) strcpy_s(a, 20, p…

C语言 实现字符串的复制

1.将字符串a的数据复制到字符串b中 &#xff08;5.用for循环和指针来实现 &#xff09;------注释掉部分采用的是此方法 #include <stdio.h> int main() {void copy_string(char from[], char to[]);char a[]"I am a student.";//char a[11];//for (int i 0…

C语言的字符串复制

提示&#xff1a;仅供参考&#xff0c;如有错误&#xff0c;还望指出。 目录 目录 一、字符串复制 二、一些优化 1.一次简单优化 2.二次优化 3.三次优化 4.四次优化 5.最后的优化 总结 前言 以下是对字符串复制的一些优化 一、字符串复制 这是自己能想到的方法 主要…

不使用strcpy()函数实现字符串复制功能

#define _CRT_SECURE_NO_WARNINGS #include<stdio.h>int main() {/*不使用strcpy()函数实现字符串复制功能*/int i 0;char str1[100];char str2[100];printf("请输入字符串-> \n");gets(str1);while (str1[i] ! \0) /*判断字符数组的第一位不是结束符*/{st…

C语言字符串复制函数strcpy()的编写与详解

strcpy&#xff0c;即string copy&#xff08;字符串复制&#xff09;的缩写。 原型声明&#xff1a;char *strcpy(char *dest, const char *src); 头文件&#xff1a;#include <string.h> 和 #include <stdio.h> 功能&#xff1a;把从src地址开始且含有NULL结束符…

C语言函数库之字符串拷贝函数(string.h)

1.字符串拷贝函数strcpy 函数定义&#xff1a; char *strcpy(char *str1, const char *str2); 函数功能&#xff1a;把字符串str2(包括\0)拷贝到字符串str1当中&#xff0c;并返回str1。举例&#xff1a; #include<stdio.h> #include<string.h> int main(){char s…

【C/C++】C语言复制字符串及复制函数汇总(strcpy()/memcpy()/strncpy()/memmove())

目录: strcpy()举例&#xff1a; memcpy()举例&#xff1a; strncpy()举例&#xff1a; memmove()举例&#xff1a; 我们首先来考虑一个简单的问题&#xff0c;我们定义了一个字符串&#xff0c;然后想要复制这个字符串&#xff0c;在C语言中&#xff0c;我们可以用for循环和指…

C语言编写字符串拷贝(strcpy)函数详解以及assert函数

目录 一.strcpy函数 原型声明 功能 说明 代码及运行结果 二.自己编写strcpy函数 代码一及运行结果 代码二&#xff08;改进&#xff09;及运行结果 代码三&#xff08;进一步改进&#xff09;及assert函数 在这里解释一下什么是asser函数&#xff08;断言函数&#xff…

程序员一般通过什么平台接单

今天给大家介绍几个程序员可以接私活的平台。在外人眼中,程序员敲几行代码就能拿到不错的薪水,理所应当需要掌握与计算机方面相关的技术;私活没有那么好做,但是可以作为一个额外的收入渠道,或者想要找项目练手的程序员,都乐意利用自己的业余时间接私活。 1、程序员客栈 …

福利:总结10个Python赚钱的接单平台!兼职月入5000+

如果说当下什么编程语言最靠谱或者比较适合搞副业&#xff1f; 答案肯定100%是&#xff1a;Python Python是所有语法中最简单易上手的语言&#xff0c;不需要特别的的英语词汇量&#xff0c;逻辑思维也不需要很差就能上手。而且学会了之后就能编写代码爬取各种数据&#xff0c…

大一学生靠爬虫接单月入上万?这些接私活的外包平台分享给你!让你外包接到手软!

概叙 今天听一个同事说起他弟弟&#xff0c;同事他暑假教了两个月的python爬虫&#xff0c;也告诉他怎么接外包赚钱&#xff0c;本意是想他自己能在校给自己赚点生活费&#xff0c;不曾想到一月居然能赚这么多&#xff01;毕竟有了技术的话&#xff0c;除了工作上的&#xff0c…