采集场景

采集Amazon商品评价数据,实例网址:https://www.amazon.com/product-reviews/B07211W6X2/ 。

 

采集字段

评价标题、评价星级、评价时间、评论内容、有用数、追评数等字段。

 

鼠标放到图片上,右键,选择【在新标签页中打开图片】可查看高清大图

下文其他图片同理

 

采集结果

采集结果可导出为Excel、CSV、HTML、数据库等多种格式。导出为Excel示例:

 

 

教程说明

本篇更新时间:2020/5/12    八爪鱼版本:V8.1.8

如果因网页改版造成网址或步骤无效,无法收集到目标数据,请联系官方客服,我们将及时修正。

 

采集步骤

步骤一:使用【智能识别】建立循环列表和翻页循环

步骤二、调整通过【智能识别】生成的规则

步骤三、优化规则

步骤四、启动采集

 

示例网址:

https://www.amazon.com/product-reviews/B07211W6X2/ 

https://www.amazon.com/product-reviews/B07S1YPSGT/

 

步骤一、使用【智能识别】建立循环列表和翻页循环

 

1、在首页点击左上角  按钮,选择【自定义任务】,输入示例网址,然后点【保存设置】,八爪鱼自动打开网页。

点击【自动识别网页】,成功识别了文章列表中的数据和翻页。

点击【生成采集设置】,将自动识别出的列表数据和翻页,生成为采集流程,方便我们使用和修改。

 

  

特别说明:

a. 本文使用【自动识别】,自动识别网页上的列表、滚动和翻页。识别成功后会生成采集规则,再对采集规则调整,以采集目标数据。如果【自动识别】的结果与以上图片不同,可点击【取消识别】自行配置采集流程或联系客服反馈。详情点击查看 【自动识别】教程

b. 示例中输入的是2个Amazon商品评论的网址,大家可以根据需要,更换成自己需要的。Amazon商品详情页和评论页面的网址都由 主域名/参数/ASIN编码 拼接而成,适用于Amazon各个国家的站点。

评论页的网址参数固定为:product-reviews,商品ASIN编码为 B07211W6X2 ,则评论页的网址是:https://www.amazon.com/product-reviews/B07211W6X2/ 。

详情页的网址参数固定为:dp,商品ASIN编码为 B07211W6X2,则详情页的网址是:https://www.amazon.com/dp/B07211W6X2/ 。

因此,只要有目标Amazon商品的ASIN编码,就可批量生成评论页网址,提取全部评论数据。

如何获得商品的ASIN编码?通过 Amazon商品列表页数据采集 可获得大批ASIN编码。

c. 如果一打开网页后就出现验证码,无法正常配置规则,可点击【设置】按钮,切换【浏览器版本】,以新的浏览器版本打开网页,以跳过验证码。

 

步骤二、调整通过【智能识别】生成的规则

 

【智能识别】很好的辅助我们建立了采集规则,我们可以对规则进行调整和优化。

 

1、删除不需要字段

在【当前页面数据预览】中,删除不需要的字段。

 

 

2、对字段进行重命名

在【当前页面数据预览】中,编辑字段名称。

 

 

3、添加特殊字段:采集时间、当前页面网址

有一些字段,八爪鱼无法自动提取到,需要我们手动添加。

双击流程图中的【提取列表数据】步骤,进入其设置页面,点击【+】,添加【添加当前时间】和【页面网址】。

 

 

4、提取ASIN编码

每个商品具有唯一的ASIN编码,将其提取下来,以标识评论属于哪个商品。如有无需ASIN编码,可跳过此步骤。

ASIN编码在当前商品评论网址中,对采集到的当前商品评论网址进行格式化处理,得到ASIN编码。

点击【页面网址】字段后的【...】→【格式化数据】【添加步骤】【正则表达式匹配】,输入正则表达式 (?<=/product-reviews/)(.+?){10} ,然后点击【应用】保存。

再次双击【提取数据】进入字段列表ASIN编码从【页面网址】中提取出来。最后将【页面网址】字段改名为【ASIN】。

 

 

特别说明:

a. 什么是数据格式化?数据采集下来之后,有时候格式不是我们想要的,或者只想从一段数据里提取特定数据,可通过八爪鱼的【格式化数据】功能实现。详情点击查看 数据格式化教程 。

b. 正则表达式是什么?怎么写?正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,用来从文本中匹配/过滤信息。正则表达式有其特定写法,需要系统学习才能掌握,点击查看 正则表达式 教程

 

步骤三、优化规则

 

以上步骤可以完成基本的数据采集。但Amazon有防采集,如需稳定采集大量数据,需对采集规则进行优化。常见的优化方法如下:

 

1、设置页面滚动与Ajax超时

Amazon打开商品评论网页和翻页后,需向下一屏一屏滚动,才能加载出全部评论列表,在八爪鱼中也需进行这样设置。

同时翻页使用了Ajax技术,需设置Ajax超时。

 

双击【打开循环中的网页】,进入设置页面。点开【页面加载后】,设置【页面加载后向下滚动】,滚动方式为【向下滚动一屏】,【滚动次数】为5次,【每次间隔】1秒 ,设置后保存。

双击【点击翻页】,进入设置页面。设置【Ajax超时】30s。设置【页面加载后向下滚动】,滚动方式为【向下滚动一屏】,【滚动次数】为5次,【每次间隔】1秒 ,设置后保存。

 

 

特别说明:

a. 设置中的滚动次数和时间间隔,请根据采集需求和网页加载情况进行设置,并非是一成不变的,具体请点击查看 处理滚动加载数据的网页教程

b. 评论中的翻页使用了Ajax技术,需设置Ajax超时。一般情况下,八爪鱼会自动判断并设置一定的【Ajax超时】。如果系统判断失误或者自动设置的【Ajax超时】过短,可根据采集需求和网页加载情况进行调整,详情点击查看 Ajax教程 。

 

2、设置重试条件

如果是初次采集,可以跳过此步骤,直接启动采集获取数据。

如果已经采集到一定数据后,发现触发了Amazon的防采集,出现验证码,可以通过设置重试条件解决。

验证码一般在打开新页面后出现。在这个规则中,【打开循环中的网页】后会打开新页面。因此需对这个步骤设置重试,重试时以新的IP和浏览器版本打开网页,以跳过验证码。

 

进入【打开循环中的网页】设置步骤:勾选【当如下条件满足时重试】,重试条件为 当前页面的【元素XPath】不包含 //div[@class="a-section review aok-relative"] (【打开循环中的网页】的后一个步骤【循环列表】的XPath) ,重试次数为5-10次,每次间隔0-3秒。

勾选【重试时同时切换代理IP】,选择【随机伪造IP】

勾选【重试时同时切换浏览器版本】,点击【浏览器列表】,将除手机端外的浏览器列表都勾选上。

 

 

特别说明:

a. 如何设置重试条件?如果网页按预期正常打开,那当前步骤的下一个步骤的定位XPath肯定存在,如果未正常打开,则不存在。可以此来设置重试条件。本示例中,【打开循环中的网页】后是【循环列表】,那我们就用【循环列表】的定位XPath来作为重试的条件。本示例中【循环列表】的定位XPath为://div[@class="a-section review aok-relative"] 。详情点击查看 重试、重试同时切换代理IP/UA 教程

b. 【重试时同时切换代理IP】是什么?网页未正常打开时,可尝试使用新的代理IP重新打开网页,可有效突破防采集。代理IP分为【优质代理IP】和【随机伪造IP】。【优质代理IP】质量高,需额外付费购买。随机伪造IP质量较低,免费使用。详情点击查看 重试、重试同时切换代理IP/UA 教程

c. 【重试时同时切换浏览器版本】是什么?在不同的浏览器版本中,网页可能有不同的显示结果。网页未正常打开时, 可尝试【重试时同时切换浏览器版本】,用不同的浏览器版本打开网页。详情点击查看 重试、重试同时切换代理IP/UA 教程

 

步骤四、启动采集

 

1、单击【采集】并【启动本地采集】。启动后八爪鱼开始自动采集数据。 

 

 

特别说明:

a. 【本地采集】是使用自己的电脑进行采集,【云采集】是使用八爪鱼提供的云服务器采集,点击查看 本地采集与云采集详解

 

2、采集完成后,选择合适的导出方式来导出数据。支持导出为Excel,CSV,HTML,数据库等。这里导出为Excel。

 

 

示例数据:

 

 

作者:Bin

编辑:Aisling