Bläddra i källkod

列表页异常任务支持标记

maxiaoshan 2 år sedan
förälder
incheckning
9f6d7554b4
1 ändrade filer med 20 tillägg och 17 borttagningar
  1. 20 17
      src/luatask/task.go

+ 20 - 17
src/luatask/task.go

@@ -1635,24 +1635,27 @@ func CreateTaskProcess() {
 			}
 			if spider.Platform == "golua平台" { //lua异常(由于采集频率异常比较特殊固放到最后处理)
 				//5、列表页异常	errtype:7
-				if spider.ListDownloadAllTimes == 0 || (spider.ListNoDataTimes > 0 && spider.ListNoDataTimes == spider.ListDownloadAllTimes) { //spider.ListDownloadAllTimes == 0针对异常不运行爬虫做判断
-					limitDayNum := 0
-					if spider.Event == 7520 { //由于7520节点爬虫循环一轮的时间较长,心跳有可能仍是前一天的
-						limitDayNum = -1
-					}
-					//if !spider.ListIsFilter || (spider.FindListHeart < util.GetTime(limitDayNum) && spider.ListIsFilter) { //列表页不含过滤代码或者有过滤无心跳
-					if spider.FindListHeart < util.GetTime(limitDayNum) { //最近心跳判断为异常
-						task.State = 1 //待处理
-						task.ErrType = TASK_LISTERR
-						task.DescribeMap[TASK_LISTERR] = "列表页异常:\n 列表页共采集" + fmt.Sprint(spider.ListDownloadAllTimes) + "轮,其中有" + fmt.Sprint(spider.ListNoDataTimes) + "轮无数据\n"
+				listTagTime, ok := spider.TaskTags[fmt.Sprint(TASK_LISTERR)].(int64)
+				if !ok || listTagTime < util.GetTime(-7) { //无标签或者上次标记时间不在7天内的建任务
+					if spider.ListDownloadAllTimes == 0 || (spider.ListNoDataTimes > 0 && spider.ListNoDataTimes == spider.ListDownloadAllTimes) { //spider.ListDownloadAllTimes == 0针对异常不运行爬虫做判断
+						limitDayNum := 0
+						if spider.Event == 7520 { //由于7520节点爬虫循环一轮的时间较长,心跳有可能仍是前一天的
+							limitDayNum = -1
+						}
+						//if !spider.ListIsFilter || (spider.FindListHeart < util.GetTime(limitDayNum) && spider.ListIsFilter) { //列表页不含过滤代码或者有过滤无心跳
+						if spider.FindListHeart < util.GetTime(limitDayNum) { //最近心跳判断为异常
+							task.State = 1 //待处理
+							task.ErrType = TASK_LISTERR
+							task.DescribeMap[TASK_LISTERR] = "列表页异常:\n 列表页共采集" + fmt.Sprint(spider.ListDownloadAllTimes) + "轮,其中有" + fmt.Sprint(spider.ListNoDataTimes) + "轮无数据\n"
+						}
+						// if !spider.ListIsFilter { //列表页不含过滤代码
+						// 	task.State = 1 //待处理
+						// 	task.ErrType = TASK_LISTERR
+						// } else if len(task.DescribeMap) == 0 { //只有列表页异常且有过滤代码
+						// 	task.State = 0 //待确认
+						// 	task.ErrType = TASK_LISTERR
+						// }
 					}
-					// if !spider.ListIsFilter { //列表页不含过滤代码
-					// 	task.State = 1 //待处理
-					// 	task.ErrType = TASK_LISTERR
-					// } else if len(task.DescribeMap) == 0 { //只有列表页异常且有过滤代码
-					// 	task.State = 0 //待确认
-					// 	task.ErrType = TASK_LISTERR
-					// }
 				}
 				//6、采集频率异常	errtype:8
 				if spider.ListOhPercentTimes > 0 { //采集频率异常