gpt4 book ai didi

javascript - pjscrape 延迟 btw 抓取 : how?

转载 作者:行者123 更新时间:2023-11-30 10:35:30 27 4
gpt4 key购买 nike

我正在使用 pjscrape 抓取大量页面。

我面临的问题是服务器通常会在短时间内建立一定数量的迭代连接后将您拒之门外。

我发现在页面抓取和后续页面之间创建一些延迟的唯一方法是使用就绪函数,即

pjs.addSuite({
// single URL or array
url: urls,
ready: function() {
return $('#MY_LAST_DIV').length > 0;
},
// single function or array, evaluated in the client
scraper: function() {
//...SCRAPING CODE...
}
});

pjscrape 超时函数似乎可以处理其他问题(我引用以下)

pjs.config({ 
...
timeoutInterval: 20000,
timeoutLimit: 20000
});

有没有办法在抓取之间创建间隔?

最佳答案

查看源代码,目前没有机制在抓取它们之前等待一段时间但是加一个应该不难。这是一个原型(prototype)补丁(未经测试,仅供引用)

38a39
> delayBetweenRuns: 0,
639c640,642
< s.scrape(url, scrapers, complete);
---
> window.setTimeout(function() {
> s.scrape(url, scrapers, complete);
> },config.delayBetweenRuns);

它只是放置一个 setTimout 来包装 scrape 调用,默认情况下定义为 0 的超时。第一行是添加的配置键

关于javascript - pjscrape 延迟 btw 抓取 : how?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14237647/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com