From b2699e4e0c66125254156fb54705e569094db499 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 09 三月 2019 16:15:22 +0800 Subject: [PATCH] 订单爬取规则修改 --- fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeOrderApiUtil.java | 200 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 192 insertions(+), 8 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeOrderApiUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeOrderApiUtil.java index 8bf89a4..4fa4ee5 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeOrderApiUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeOrderApiUtil.java @@ -14,6 +14,7 @@ import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.StringUtil; +import com.yeshi.fanli.util.TimeUtil; import net.sf.json.JSONArray; import net.sf.json.JSONObject; @@ -29,13 +30,16 @@ * @param appSecret * @return */ - public static List<TaoBaoOrder> getTaoBaoSpecialOrder(String startTime, int page, String appKey, String appSecret) { + private static List<TaoBaoOrder> getTaoBaoSpecialOrder(String startTime, int span, int page, String appKey, + String appSecret) { OrderQuery orderQuery = new OrderQuery(); orderQuery.startTime = startTime; orderQuery.tkStatus = 1; orderQuery.orderScene = 3; orderQuery.pageNo = page; orderQuery.pageSize = 100; + orderQuery.span = span; + orderQuery.orderQueryType = "create_time"; return queryTaoBaoOrder(orderQuery, appKey, appSecret); } @@ -48,7 +52,7 @@ * @param appSecret * @return */ - public static List<TaoBaoOrder> getTaoBaoSpecialThirdOrder(String startTime, int page, String appKey, + private static List<TaoBaoOrder> getTaoBaoSpecialThirdOrder(String startTime, int span, int page, String appKey, String appSecret) { OrderQuery orderQuery = new OrderQuery(); orderQuery.startTime = startTime; @@ -57,6 +61,7 @@ orderQuery.orderScene = 3; orderQuery.pageNo = page; orderQuery.pageSize = 100; + orderQuery.span = span; orderQuery.orderCountType = 2; return queryTaoBaoOrder(orderQuery, appKey, appSecret); } @@ -69,12 +74,12 @@ * @param appSecret * @return */ - public static List<TaoBaoOrder> getTaoBaoRelationOrder(String startTime, int page, String appKey, + private static List<TaoBaoOrder> getTaoBaoRelationOrder(String startTime, int span, int page, String appKey, String appSecret) { OrderQuery orderQuery = new OrderQuery(); orderQuery.startTime = startTime; - orderQuery.span = 1200; + orderQuery.span = span; orderQuery.tkStatus = 1; orderQuery.orderQueryType = "create_time"; orderQuery.orderScene = 2; @@ -92,11 +97,11 @@ * @param appSecret * @return */ - public static List<TaoBaoOrder> getTaoBaoRelationThirdOrder(String startTime, int page, String appKey, + private static List<TaoBaoOrder> getTaoBaoRelationThirdOrder(String startTime, int span, int page, String appKey, String appSecret) { OrderQuery orderQuery = new OrderQuery(); orderQuery.startTime = startTime; - orderQuery.span = 1200; + orderQuery.span = span; orderQuery.tkStatus = 1; orderQuery.orderQueryType = "create_time"; orderQuery.orderScene = 2; @@ -129,12 +134,13 @@ orderQuery.orderScene = 1; orderQuery.pageNo = page; orderQuery.pageSize = 100; - orderQuery.orderCountType=2; + orderQuery.orderCountType = 2; return queryTaoBaoOrder(orderQuery, appKey, appSecret); } - + /** * 鑾峰彇绗笁鏂硅鍗� + * * @param startTime * @param span * @param page @@ -321,4 +327,182 @@ return orderList; } + private static List<TaoBaoOrder> getSpecialOrder(long startTime, int span) { + int page = 1; + String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss"); + List<TaoBaoOrder> orderList = getTaoBaoSpecialOrder(startTimeStr, span, page, Constant.TAOBAO_AUTH_APPKEY, + Constant.TAOBAO_AUTH_APPSECRET); + while (orderList.size() == 100 * page) { + page++; + List<TaoBaoOrder> tempOrderList = getTaoBaoSpecialOrder(startTimeStr, span, page, + Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET); + if (tempOrderList != null && tempOrderList.size() > 0) + orderList.addAll(tempOrderList); + } + return orderList; + } + + /** + * 鑾峰彇绗笁鏂规櫘閫氳鍗� + * + * @param startTime + * @param span + * @return + */ + private static List<TaoBaoOrder> getThirdTSpecialOrder(long startTime, int span) { + int page = 1; + String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss"); + List<TaoBaoOrder> orderList = getTaoBaoSpecialThirdOrder(startTimeStr, span, page, Constant.TAOBAO_AUTH_APPKEY, + Constant.TAOBAO_AUTH_APPSECRET); + while (orderList.size() == 100 * page) { + page++; + List<TaoBaoOrder> tempOrderList = getTaoBaoSpecialThirdOrder(startTimeStr, span, page, + Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET); + if (tempOrderList != null && tempOrderList.size() > 0) + orderList.addAll(tempOrderList); + } + return orderList; + } + + private static List<TaoBaoOrder> getRelationOrder(long startTime, int span) { + int page = 1; + String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss"); + List<TaoBaoOrder> orderList = getTaoBaoRelationOrder(startTimeStr, span, page, Constant.TAOBAO_AUTH_APPKEY, + Constant.TAOBAO_AUTH_APPSECRET); + while (orderList.size() == 100 * page) { + page++; + List<TaoBaoOrder> tempOrderList = getTaoBaoRelationOrder(startTimeStr, span, page, + Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET); + if (tempOrderList != null && tempOrderList.size() > 0) + orderList.addAll(tempOrderList); + } + return orderList; + } + + private static List<TaoBaoOrder> getThirdRelationOrder(long startTime, int span) { + int page = 1; + String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss"); + List<TaoBaoOrder> orderList = getTaoBaoRelationThirdOrder(startTimeStr, span, page, Constant.TAOBAO_AUTH_APPKEY, + Constant.TAOBAO_AUTH_APPSECRET); + while (orderList.size() == 100 * page) { + page++; + List<TaoBaoOrder> tempOrderList = getTaoBaoRelationThirdOrder(startTimeStr, span, page, + Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET); + if (tempOrderList != null && tempOrderList.size() > 0) + orderList.addAll(tempOrderList); + } + return orderList; + } + + /** + * 鑾峰彇鏌愪釜鍖洪棿鐨勪細鍛樿鍗� + * + * @param startTime + * @param endTime + * @return + */ + public static List<TaoBaoOrder> getSpecialOrder(long startTime, long endTime) { + List<TaoBaoOrder> orderList = new ArrayList<>(); + long span = (endTime - startTime) % 1000 == 0 ? (endTime - startTime) / 1000 : (endTime - startTime) / 1000 + 1; + int count = (int) (span / 1200); + if (span % 1200 != 0) + count++; + for (int i = 0; i < count; i++) { + long startT = startTime + i * 1200 * 1000L; + int s = 1200; + if (endTime < startT + 1200 * 1000L) { + s = (int) ((endTime - startT) / 1000) + 1; + if (s < 60) + s = 60; + } + List<TaoBaoOrder> tempOrderList = getSpecialOrder(startT, s); + if (tempOrderList != null && tempOrderList.size() > 0) + orderList.addAll(tempOrderList); + } + return orderList; + } + + /** + * 鑾峰彇鏌愪釜鍖洪棿鐨勭涓夋柟浼氬憳璁㈠崟 + * + * @param startTime + * @param endTime + * @return + */ + public static List<TaoBaoOrder> getThirdSpecialOrder(long startTime, long endTime) { + List<TaoBaoOrder> orderList = new ArrayList<>(); + long span = (endTime - startTime) % 1000 == 0 ? (endTime - startTime) / 1000 : (endTime - startTime) / 1000 + 1; + int count = (int) (span / 1200); + if (span % 1200 != 0) + count++; + for (int i = 0; i < count; i++) { + long startT = startTime + i * 1200 * 1000L; + int s = 1200; + if (endTime < startT + 1200 * 1000L) { + s = (int) ((endTime - startT) / 1000) + 1; + if (s < 60) + s = 60; + } + List<TaoBaoOrder> tempOrderList = getThirdTSpecialOrder(startT, s); + if (tempOrderList != null && tempOrderList.size() > 0) + orderList.addAll(tempOrderList); + } + return orderList; + } + + /** + * 鑾峰彇娓犻亾璁㈠崟 + * + * @param startTime + * @param endTime + * @return + */ + public static List<TaoBaoOrder> getRelationOrder(long startTime, long endTime) { + List<TaoBaoOrder> orderList = new ArrayList<>(); + long span = (endTime - startTime) % 1000 == 0 ? (endTime - startTime) / 1000 : (endTime - startTime) / 1000 + 1; + int count = (int) (span / 1200); + if (span % 1200 != 0) + count++; + for (int i = 0; i < count; i++) { + long startT = startTime + i * 1200 * 1000L; + int s = 1200; + if (endTime < startT + 1200 * 1000L) { + s = (int) ((endTime - startT) / 1000) + 1; + if (s < 60) + s = 60; + } + List<TaoBaoOrder> tempOrderList = getRelationOrder(startT, s); + if (tempOrderList != null && tempOrderList.size() > 0) + orderList.addAll(tempOrderList); + } + return orderList; + } + + /** + * 鑾峰彇鏌愪釜鍖洪棿鐨勭涓夋柟娓犻亾璁㈠崟 + * + * @param startTime + * @param endTime + * @return + */ + public static List<TaoBaoOrder> getThirdRelationOrder(long startTime, long endTime) { + List<TaoBaoOrder> orderList = new ArrayList<>(); + long span = (endTime - startTime) % 1000 == 0 ? (endTime - startTime) / 1000 : (endTime - startTime) / 1000 + 1; + int count = (int) (span / 1200); + if (span % 1200 != 0) + count++; + for (int i = 0; i < count; i++) { + long startT = startTime + i * 1200 * 1000L; + int s = 1200; + if (endTime < startT + 1200 * 1000L) { + s = (int) ((endTime - startT) / 1000) + 1; + if (s < 60) + s = 60; + } + List<TaoBaoOrder> tempOrderList = getThirdRelationOrder(startT, s); + if (tempOrderList != null && tempOrderList.size() > 0) + orderList.addAll(tempOrderList); + } + return orderList; + } } -- Gitblit v1.8.0