常用事件

crawlstart

當爬蟲開始跟 restarted 的時候會觸發的事件

crawler.on("crawlstart", function() {
    console.log("Crawl starting");
});

fetchstart

  • 當從 queue 中取出一個 item 要開始抓取時會觸發的事件。當你使用同步化處理這個事件時,你可以修改 request options。
  • request options 中有包含 headers 和 request method。
crawler.on("fetchstart", function(queueItem, requestOptions) {
    console.log("fetchStart", queueItem);
});

fetchcomplete

抓取完成的時候會觸發的事件,responseBody 預設是 buffer,所以取值時要用 responseBody.toString()

crawler.on("fetchcomplete", function(queueItem, responseBody, responseObject) {
    console.log("fetchcomplete", queueItem);
    console.log("body", responseBody.toString());
});

fetcherror

當抓取時發生 HTTP error 的時候會觸發的事件

crawler.on("fetcherror", function(queueItem, responseObject) {
    console.log("fetch error!");
});

complete

當爬蟲已經沒有東西可以爬,而且 queue 都做完的時候會觸發的事件。

crawler.on("complete", function() {
    console.log("Finished!");
});

results matching ""

    No results matching ""