Top Menu

保存程序处理状态

因为淘宝对抓取次数由限制,故在抓取的过程中要被打断多次,每次都需要手动更改循环初始参数非常麻烦,所以试着保存程序最后处理状态,在下次运行程序时可以直接读取最后的处理状态。

2014-04-19_20-28-33

首先在每次循环的最后加入保存状态的语句

然后在循环开始前对循环初始变量进行判断

先读取数据库中保存的状态

然后与数据库中的店铺总数进行对比

如果中断时已经到达最后一个店铺,则重置计数器到第一个店铺,否则从上一次的中断点开始继续抓取。

但是这样有一个问题,就是暂时还无法保存分页状态,于是决定用”-“来作为分隔符,将分页和店铺状态保存在一个value里。比较特殊的是除了在店铺处要判断一次外,在进行分页的时候也要进行判断。分页处的判断还要考虑计数器重置的影响。

2014-04-19_21-28-54

加入分页后,相关语句改为

最后结果,已经能够在重新打开后自动从上次被屏蔽的地方开始继续抓取了

2014-04-19_21-29-32

There are no comments yet

  • Hello, guest

Powered by WordPress. Designed by WooThemes