0
我正在写一个简单的firefox扩展,它抓取一堆url并提取某些字段(所有被抓取的url将被加载到用户的标签中)。Firefox XPCOM setTimeout问题
我面临的问题是部分实际访问URL并加载页面。我希望每个页面都在固定的时间段内加载。例如,每5秒钟访问每个站点。
我尝试了这里列出的两种方法http://groups.google.com/group/mozilla.dev.extensions/browse_thread/thread/de47c3949542b759但无济于事。使用Components.classes [“@ mozilla.org/appshell/appShellService;1”]和nsITimer。该while循环立即执行和如何实现能正确调用gotoURL每5秒计时器功能的页面加载后
function startCrawl()
{
while(urlq.length>0)
{
var currentUrl = urlq.shift();
urlhash[currentUrl]=1;
if(currentUrl!=undefined)
{
setTimeout(gotoURL,5000,currentUrl);
}
}
start=0;
alert('crawl stopped');
for(var k in foundData)
{
alert('found: ' + k);
}
}
function gotoURL(gUrl)
{
mainWindow.content.wrappedJSObject.location=gUrl;
extractContent();
}
(快速连续约5秒钟后)?谢谢!
哇,你快!它像一个魅力。非常感谢你! – netvarun 2011-04-25 18:27:40
@ user649851:不客气:) – 2011-04-25 18:32:56