WebScraper安装过程中的几个注意事项(图)
优采云 发布时间: 2021-06-03 04:33WebScraper安装过程中的几个注意事项(图)
Web Scraper 是一款面向普通用户(无需专业 IT 技术)的免费爬虫工具,通过鼠标和简单的配置,您可以轻松获取您想要的数据。例如知乎答案列表、微博热点、微博评论、电商网站产品信息、博客文章list等
环境要求
当然,这么简单的工具,环境要求也很简单。它只需要一台可以上网的电脑和一个版本不是很低的Chrome浏览器。具体版本要求大于31,当然越新越好。向上。目前Chrome有60多个,也就是说对这个版本的要求不是很高。
安装过程
1.png
2、然后在弹出的框中点击“添加扩展”
2.png
3、安装完成后,顶部工具栏会显示Web Scraper图标。
3.png
4.gif
2、 安装完成后,顶部工具栏会显示 Web Scraper 图标。
3.png
第一次接触网络爬虫**打开网络爬虫**
开发者可以路过看看后面
windows系统下可以使用快捷键F12,部分笔记本机型需要按Fn+F12;
Mac系统下可以使用快捷键command+option+i;
也可以直接在Chrome界面操作,点击设置—>更多工具—>开发者工具
5.png
打开后的效果如下,绿框部分是开发者工具的完整界面,红框部分是Web Scraper区域,是我们后面要操作的部分。
6.png
注意:如果在浏览器右侧区域打开开发者工具,需要将开发者工具的位置调整到浏览器底部。
7.gif
原理及功能说明
我们通常为哪些场景捕获数据?如果只是几条数据或者某条特定的数据,就不值得用工具了。使用工具的原因是批量获取数据,而不是手动方式太费时费力,甚至无法完成。比如抢微博热搜前100条,当然可以一页一页翻,但是太耗能了。比如知乎所有某个问题的答案,一些热门问题有上千个答案。最好手动保存。
基于这样的需求,采集这些数据的使用方式一般有两种,一种叫做“我们程序员的方式”,一种叫做“你们普通人的方式”。
“我们程序员的方式”是指开发者会根据自己的需求编写爬虫或者使用爬虫框架,盯着屏幕打代码,根据需求的复杂程度,打代码的时间可以从一个或两个小时 不需要一两天。当然,如果时间太长,可能是因为要求太复杂了。对于如此复杂的需求,普通人的方法可能行不通。常用爬虫框架Scrapy(Python)、WebMagic(Java)、Crawler4j(Java)。
本文主要介绍“你们常人之道”,即Web Scraper工具。由于其界面简洁,操作简单,可导出为Excel格式,不懂开发的同学也能快速上手。而对于一些简单的需求,开发者不需要自己实现爬虫。毕竟,点击几下鼠标比输入半天的代码还要快。
数据爬取的思路大致可以概括如下:
1、通过一个或多个入口地址获取初始数据。比如文章列表页面,或者有一定规则的页面,比如带分页的列表页面;
2、根据入口页面的一些信息,比如链接点,进入下一页获取必要的信息;
3、根据上一层的链接继续下一层,获取必要的信息(这一步可以无限循环);
原理大致相同。接下来,让我们正式认识一下Web Scraper工具。来吧,打开开发者工具,点击Web Scraper标签,看到分为三部分:
8.png
新建站点地图:首先了解站点地图,字面意思是网站Map,这里可以理解为入口地址,可以理解为对应一个网站,对应一个需求,假设你想得到一个问题在知乎上回答,创建一个站点地图,并将这个问题的地址设置为站点地图的起始地址,然后点击“创建站点地图”来创建站点地图。
9.png
站点地图:站点地图的集合。所有创建的站点地图都会显示在这里,可以在此处输入站点地图进行修改、数据抓取等操作。
10.png
站点地图:进入某个站点地图,可以进行一系列的操作,如下图:
11.png
在红框中添加新的选择器是必不可少的一步。什么是选择器,字面意思是:选择器,一个选择器对应网页的一部分,也就是收录我们要采集的数据的部分。
我需要解释一下。一个站点地图下可以有多个选择器,每个选择器可以收录子选择器。一个选择器可以只对应一个标题,也可以对应整个区域。该区域可能收录标题、副标题和作者信息、内容等。
选择器:查看所有选择器。
选择器图:查看当前站点地图的拓扑*敏*感*词*,根节点是什么,几个选择器,选择器下收录的子选择器。
编辑元数据:您可以修改站点地图信息、标题和起始地址。
Scrape:开始数据抓取。
Export data as CSV:以CSV格式导出捕获的数据。
至此,有一个简单的了解就足够了。真知灼见,具体操作案例令人信服。下面举几个例子来说明具体的用法。
案例实践简单试水hao123
从简单到深入,我们以一个简单的例子作为入口,作为对Web Scraper服务的进一步了解
需求背景:见下hao123页面红框部分。我们的要求是统计这部分区域的所有网站名称和链接地址,最后在Excel中生成。因为这部分内容已经足够简单了,当然实际需求可能比这更复杂,而且人工统计这么几条数据的时间也很快。
12.png
开始
1、假设我们已经打开了hao123页面,在这个页面底部打开了开发者工具,并找到了Web Scraper标签栏;
2、点击“创建站点地图”;
13.png
3、后输入sitemap名称和start url,名称只是为了我们标记,所以命名为hao123(注意不支持中文),start url为hao123的url,然后点击create sitemap;
14.png
4、Web Scraper 自动定位到这个站点地图后,我们添加一个选择器,点击“添加新的选择器”;
15.png
5、 首先给这个选择器分配一个id,是一个容易识别的名字。我把它命名为热这里。因为要获取名称和链接,所以将类型设置为链接。这种类型是专门为网页链接准备的。选择Link type后,会自动提取name和link这两个属性;
16.png
6、然后点击select,然后我们在网页上移动光标,我们会发现光标的颜色会发生变化,变成绿色,表示这是我们当前选中的区域。我们将光标定位在需求中提到的栏目中的一个链接上,比如第一条头条新闻,点击这里,这部分会变成红色,表示已经被选中,我们的目的是选中有多个,所以选中这个,继续选择第二个,我们会发现这一行的链接都变红了,没错,这就是我们想要的效果。然后点击“完成选择!”,最后别忘了勾选Multiple,表示你要采集multiple数据;
17.png
7、 最后保存,保存选择器。单击元素预览可预览所选区域,单击数据预览可在浏览器中预览捕获的数据。后面的文本框里面的内容对于懂技术的同学来说是很清楚的。这是xpath。我们可以不用鼠标直接手写xpath;
完整的操作流程如下:
18.gif
8、 完成上一步后,就可以实际导出了。别着急,看看其他操作。 Sitemap hao123下的Selector图可以看到拓扑图。 _root 是根选择器。创建站点地图时,会自动出现一个_root节点,可以看到它的子选择器,也就是我们创建的热选择器;
19.png
9、Scrape,开始抓取数据。
在10、Sitemap hao123下浏览,可以直接通过浏览器查看爬取的最终结果,需要重新;
20.png
11、最后使用Export data as CSV导出为CSV格式,其中hot列为标题,hot-href列为链接;
21.png
怎么样,现在试试
获取知乎questions 的所有答案
简单介绍结束,我们来试一个有点难度的,抢一个知乎问题的所有答案,包括回答者的昵称、批准数和回答内容。问:为什么炫富的程序员这么少?
知乎的特点是只有向下滚动页面才会加载下一个答案
1、首先在Chrome中打开此链接,链接地址为:,并调出开发者工具,定位到Web Scraper标签栏;
2、新建站点地图,填写站点地图名称和起始网址;
22.png
3、下一步,开始添加选择器,点击添加新选择器;
4、 我们先来分析一下知乎问题的结构。如图,一个问题由多个这样的区域组成,一个区域就是一个答案。这个回答区包括昵称、批准号、回答内容和发布时间等。红色框起来的部分就是我们要抓取的内容。所以我们抓取数据的逻辑是这样的:从入口页面进入,获取当前页面已经加载的答案,找到一个答案区域,提取昵称,批准数,以及里面的答案内容,然后依次执行。当加载区域获取完成后,模拟鼠标向下滚动,加载后续部分,循环直到全部加载完成;
23.png
5、内容结构拓扑图如下,_root的根节点收录若干个回答区域,每个区域收录昵称、审批号、回答内容;
24.png
6、根据上面的拓扑图,开始创建选择器,选择器id填写为answer(随意填写),Type选择Element向下滚动。说明:Element是针对这种大面积的区域,这个区域也收录子元素,答案区域对应Element,因为我们需要从这个区域获取我们需要的数据,Element向下滚动表示这个区域是向下使用。滚动方式可以加载更多,专为这种下拉加载而设计。
25.png
7、 接下来,点击选择,然后将鼠标移动到页面上,当绿色框包围一个答案区域时点击鼠标,然后移动到下一个答案。同样,当绿色框收录答案区域时,单击鼠标。这时候,除了这两个答案,所有的答案区域都变成了红色的方框,然后点击“完成选择!”。最后别忘了选择Multiple,稍后保存;
26.gif
8、下一步,点击红色区域进入刚刚创建的答案选择器,创建子选择器;
27.png
9、创建昵称选择器,设置id为name,Type为Text,Select选择昵称部分。如果您没有经验,第一次可能不会选择正确的名称。如果您发现错误,您可以对其进行调整并保存。 ;
28.gif
10、创建批准号选择器;
29.gif
11、创建一个内容选择器。由于内容格式化并且很长,所以有一个技巧。选择以下更方便;
30.gif
12、 执行刮取操作。由于内容较多,可能需要几分钟。如果是测试用的,可以找一个答案少的问题来测试。
31.png
资源获取
获取的sitemap是一段json文本。使用Create new Sitemap下的Import Sitemap,然后输入获取的sitemap json字符串,命名,点击导入按钮。
32.png
33.png
最后有什么问题可以直接在公众号留言或者回复
点击查看文章