在八爪鱼中,创建循环列表有两种方式,一种是通过点击页面元素,选择相似的项,由八爪鱼自动创建的。适用于列表信息采集、列表及详情页采集。当自动创建的循环不能满足需求的时候,则需要我们手动创建或者修改循环,以满足更多的数据采集需求。

 

循环的高级选项中,有五大循环方式:URL循环、文本循环、单个元素循环、固定元素列表循环和不固定元素列表循环。

 

一、URL循环(云采集可实现加速)

适用情况:在多个同类型的网页中,网页结构要相同

具体请看 URL循环教程

 

二、文本循环(云采集可实现加速)

适用情况:在搜索框中循环输入关键词,采集关键词搜索结果的信息

实现方式:通过文本循环方式,实现循环输入关键词,采集关键词搜索结果。

具体请看 文本循环教程

 

三、单个元素循环

适用情况:需循环点击页面内的某个按钮。例如:循环点击“下一页”按钮进行翻页。

实现方式:通过单个元素循环方式,达到循环点击“下一页”按钮,进行翻页目的。

定位方式:使用XPath定位,始终定位到“下一页”按钮。

示例网址:http://www.skieer.com/guide/demo/genremoviespage1.html

 

操作示例:

① 选中“下一页”按钮 → 选择“循环点击下一页”,建立翻页循环。

 

② 循环方式为“单个元素循环”,通过“单个元素循环”中的定位XPath,不断点击“下一页”按钮实现翻页。

具体请看 分页列表信息采集教程

 

四、固定元素列表循环(云采集可实现加速)

适用情况:网页上要采集的行数是固定数目的。

实现方式:通过固定元素列表循环,循环页面内的固定元素。

定位方式:使用XPath定位,一条XPath对应循环列表中的一个元素。

示例网址:http://weixin.sogou.com/

 

操作示例:

① 选中一个文章链接 →“选中全部”→ “循环点击每个链接”,建立循环列表。

 

② 自动生成的循环方式是:固定元素列表。打开固定元素列表查看,20条XPath,一一对应循环列表中的固定20个元素(也可以看成对应浏览器页面的20条文章链接)。

这里涉及了XPath相关内容,可参考此 XPath教程

 

 

五、不固定元素列表循环

适用情况:网页上要采集的行数不是固定数目。

实现方式:通过不固定因素列表循环,循环页面内的不固定元素。

定位方式:使用XPath定位,一条XPath对应循环列表中的多个元素。

示例网址:http://weixin.sogou.com/

 

操作示例:

① 通过观察八爪鱼固定元素列表循环中生成的XPath:

//UL[@class='news-list']/LI[1]/DIV[2]/H3[1]/A[1]

//UL[@class='news-list']/LI[2]/DIV[2]/H3[1]/A[1]

......

//UL[@class='news-list']/LI[20]/DIV[2]/H3[1]/A[1]

20条XPath具有相同的特征:只有LI后面的数字不同。根据这个特征,我们可以写一条通用XPath://UL[@class='news-list']/LI/DIV[2]/H3[1]/A[1],通过这一条通用Xpath,可定位到页面中的全部10条文章链接。

将循环方式改为“不固定元素列表循环”,并将修改后的XPath填充进去。

 

② 可以看到,这条通用的XPath,对应循环列表中的所有20个元素(也可以看成对应浏览器页面的20条文章链接)。

 

同理反推,也可以将不固定元素列表改成固定元素列表。

这里涉及了XPath相关内容,可参考 XPath教程