async.mapLimit配合superagent的使用的时候遇到问题 #用于爬虫#
这是我在做一个爬虫时候遇到的问题: 我获取了一组url的数组,并在迭代器中用superagent对当前的url发送请求,我们都知道async.mapLimit中的limit参数是可以控制并发链接数的 ,是不是我控制了iterator的并发数,就相当于控制它其中superagent的请求数。 我是认为iterator每执行一次,superagent就会发送一个请求,等到iterator的callback执行了,才又会并行发起一个链接数,这样就控制了请求的发送数,被我要爬的网站403的概率就会降低。 代码如下:
4 回复
你要把async.mapLimit写到superagent.get里面
回调注入吧,Async好像是。。。我写爬虫的时候也是这些,不过现在觉得有了promise generator特别是async和await应该更方便了
是的, 所以问题是什么?
我尝试上面这段代码的时候,为什么情况是,比如你控制的并发数量是2,那执行完两个并发的请求之后,程序就停在那里,没有继续请求剩下的href?