任務(wù)是要安排的基本單位。
當(dāng)一項(xiàng)新任務(wù)(從未見過)進(jìn)來時:
如果age設(shè)置,last_crawl_time + age < now將被接受。否則丟棄。 如果itag設(shè)置且不等于它的先前值,則將被接受。否則丟棄。
發(fā)生提取錯誤或腳本錯誤時,默認(rèn)情況下該任務(wù)將重試3次。
第一次重試將在30秒,1小時,6小時,12小時后每次執(zhí)行,并且任何更多重試將推遲24小時。
如果age指定,則重試延遲不會大于age。
您可以通過添加名為retry_delayhandler 的變量來配置重試延遲。retry_delay是一個指定重試間隔的字典。dict中的項(xiàng)目是{recoied:seconds},還有一個特殊鍵:''(空字符串)用于指定默認(rèn)的重試延遲(如果未指定)。
例如,默認(rèn)retry_delay聲明如:
class MyHandler(BaseHandler):
retry_delay = {
0: 30,
1: 1*60*60,
2: 6*60*60,
3: 12*60*60,
'': 24*60*60
}
更多建議: