免费下载

八爪鱼采集器 - 最好用的网页数据采集器,超过40万用户首选网页采集软件

  1. 软件版本:V6.3
  2. 支持系统:32/64位 XP / Vista / Win7 / Win8 / Win8.1 / Win10
  3. 更新日期:11月4日 (新版功能)
免费下载
官方论坛解答
(优先处理)
点击提问
八爪鱼采集器QQ群
6群:453842433 点击加入
21群:451754429 点击加入
13群:471815573 群已满
14群:123134988 群已满
24群:544166822 群已满
23群:534947023 群已满
26群:545719478 群已满
6群:453842433 群已满
25群:545320887 群已满
28群:106739425 群已满
27群:145803152 群已满
22群:519441479 群已满
21群:451754429 群已满
20群:437959025 群已满
19群:553777636 群已满
18群:290699979 群已满
17群:199766880 群已满
16群:254764602 群已满
15群:159956780 群已满
14群:123134988 群已满
13群:471815573 群已满
12群:148686415 群已满
11群:131796370 群已满
10群:333975079 群已满
9群:135632351 群已满
8群:431013573 群已满
7群:498193915 群已满
5群:470619317 群已满
4群:257583266 群已满
1群:61570666 群已满
专业版QQ群
3群:135071723 限专业版用户
2群:385161018 群已满
1群:475423041 限专业版用户
旗舰版QQ群
2群:286777906 限旗舰版用户
1群:130849246 群已满
站长采集交流群QQ群
2群:304456535 点击加入
1群:492396817点击加入
down

云采集规则优化加速案例(1)——循环翻页拆分

标签: 云采集,高阶 2016/11/2 16:03:51

 

讲这个案例主要是想帮助大家理解云采集的原理,理解之后再根据这个思路去优化自己的云采集规则,以便获得更高的采集速度。

云采集速度对比:两个任务都是开私有云跑的(这样就不存在某个任务需要排队的情况)
                           并且所占节点数我都调整为10个节点了

 

云1.png

 

我们先来看原规则:

这个规则的目的是提取网页列表的URL,这个规则单机采集是没问题的,所有数据都会正常出来

但是这个规则有个问题,Ajax没设置,导致翻页大概需要2分钟...

Ajax设置教程

 

其实如果设置好了Ajax,单机采集的话两个规则的速度都一样,硬要比的话,优化后的也许还会比优化前的还慢不到1秒,因为多了一个输入页码的步骤

云2.png

 

看过云采集加速原理的都知道,循环列表的固定元素列表,URL列表和文本列表的才会拆分任务。

 

 

而这个规则这里也是照着这个做的,用的固定元素列表,拆分是拆分了,这个任务也确实占了10个节点,但是并没有加速的效果,这是为什么!

因为在一个规则中最耗时间的是打开网页!打开了网页之后的提取数据并不占几秒的时间,但是按照固定列表拆分之后,它就变成了以下状态:

子节点1:打开网页(5秒)-提取第1条数据-点击翻页(大概2分钟)-提取第1条数据

子节点2:打开网页(5秒)-提取第2条数据-点击翻页(大概2分钟)-提取第2条数据

子节点3:打开网页(5秒)-提取第3条数据-点击翻页(大概2分钟)-提取第3条数据

...

...

子节点10:打开网页(5秒)-提取第10条数据-点击翻页(大概2分钟)-提取第10条数据

一个子节点花了5秒的时间打开了一个网页才得到1条数据,10个节点同时采集又能多快...

 

而单机采集(假设网速与云相同)

打开网页(5秒)-提取第1-10条数据-点击翻页(大概2分钟)-提取第1-10条数据...

 

在同一个页面内,提取1条数据跟提取10条数据的速度,相信大家试过都知道,速度基本没差。

 

也就是这个规则云采集跟单机采集是基本没有区别的,即使他占满了10个节点...

 

现在我们想要优化采集规则时,首先要观察网页,根据网页特性来优化,每个网页的优化方式不一定一样。

 

我经常用到的方式是URL内如果包含了页码的,直接用循环打开URL网页的方式代替翻页循环,这样拆分任务后就是一个节点打开一部分页面,具体哪部分不清楚,是系统随机拆分的。

 

但是现在这个网页每一页的URL都一样的,这种方式就不合适了。

 

那么再来观察网页,可以发现有个跳转至多少页按钮

云3.png

 

这个就可以用文本循环,将页码都写进文本,循环输入页码,点击GO,用这个来代替翻页循环,提取数据的循环还是按原来的提取没问题,因为拆分任务只会拆最外层的循环列表,但如果最外层是翻页循环,就自动拆里面一层。

这个优化规则的循环里我只放了1000个页码,让大家看一下效果,实际采集只需要继续增加页码,把页码都写进去就可以,列表里建议是最多放2万条,2W条以上规则损坏的机率会变大,如果要试可以先把规则备好份,万一损坏了还有备份...

云4.png

 

好了,看下这个规则在用云采集拆分了之后是怎么运行的

这个规则被拆分成了100个子任务,那就是每个子任务里有10个页码,假设那十个页码是顺序的,

子节点1:打开网页(5秒)-输入页码1-点击跳转(3秒)-提取第1-10条数据-输入页码11

子节点2:打开网页(5秒)-输入页码2-点击跳转(3秒)-提取第1-10条数据-输入页码12

子节点3:打开网页(5秒)-输入页码3-点击跳转(3秒)-提取第1-10条数据-输入页码13

...

...

子节点10:打开网页(5秒)-输入页码10-点击跳转(3秒)-提取第1-10条数据-输入页码20

 

那么这时候就是真正的云采集十倍速运行,不算上把规则上传到云,然后拆分任务,分配云节点,采集到的数据上传到数据库的时间的话,那么这个任务是前8秒100条数据,往后每3秒100条数据。

 

 

其他云加速的案例:

云采集规则优化加速案例(2)——不固定元素列表转固定元素列表

 

 

 



分享到: 更多
立即下载,体验更高效简单的数据收集吧! 免费下载
联系 我们
官方联系方式 0755-26646350
商务合作QQ 1982043845
客服咨询QQ群 123134988
点击我加入