数据库中存了大概一百万个url
,我需要从数据库中取出这些url
,并将它们加入到爬取的任务队列中去。
借用另一位同学的问题描述(只是我的情况更加极端):
@every(minutes=24 * 60)
def on_start(self):
self.key_word_rank_page()
pass
def key_word_rank_page(self):
i = 0; page 参数从0开始的
while i <= 1000000:
keywordrank_url = "https://www.douban.com/more/getmore.html?page=%s&genreIds="%(i)
self.crawl(url=keywordrank_url, callback=self.process_keyword)
i += 1;
pass
这样,会不会存在丢失任务(数据)的风险?
没有数量限制,但是存在三个瓶颈:
所以建议还是分批发送