From e17d27076650fb3ddc456790be399b174f4108b4 Mon Sep 17 00:00:00 2001 From: 王明元 <97082371@qq.com> Date: Wed, 29 Jun 2022 13:03:37 +0800 Subject: [PATCH] 2022年6月29日13:03:00 增加从jsonStr设置sig3Map接口 --- src/main/java/cn/fw/freya/controller/KSController.java | 13 ++++++++++--- src/main/java/cn/fw/freya/service/crawl/impl/KuaiShouCrawl.java | 12 ++++++++++++ src/main/java/cn/fw/freya/task/DataCaptureTask.java | 5 +++-- 3 files changed, 25 insertions(+), 5 deletions(-) diff --git a/src/main/java/cn/fw/freya/controller/KSController.java b/src/main/java/cn/fw/freya/controller/KSController.java index e293eb0..96d545b 100644 --- a/src/main/java/cn/fw/freya/controller/KSController.java +++ b/src/main/java/cn/fw/freya/controller/KSController.java @@ -6,9 +6,7 @@ import cn.fw.freya.service.crawl.impl.KuaiShouCrawl; import com.alibaba.fastjson.JSONObject; import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.io.IOException; @@ -95,6 +93,15 @@ public class KSController { } /** + * 设置setSig3Map + * + */ + @PostMapping("/setMapFromString") + public boolean setMapFromString(@RequestBody String jsonStr) { + return kuaishouCrawl.setMapFromString(jsonStr); + } + + /** * 停止设置setSig3Map * */ diff --git a/src/main/java/cn/fw/freya/service/crawl/impl/KuaiShouCrawl.java b/src/main/java/cn/fw/freya/service/crawl/impl/KuaiShouCrawl.java index 46b2c46..03874f6 100644 --- a/src/main/java/cn/fw/freya/service/crawl/impl/KuaiShouCrawl.java +++ b/src/main/java/cn/fw/freya/service/crawl/impl/KuaiShouCrawl.java @@ -24,6 +24,8 @@ import cn.fw.freya.utils.http.HttpHeader; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.TypeReference; +import com.alibaba.fastjson.parser.Feature; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.http.client.CookieStore; @@ -113,6 +115,16 @@ public class KuaiShouCrawl implements CrawlStrategy { } /** + * 设置sig3Map + */ + public boolean setMapFromString(String jsonStr) { + HashMap map = JSON.parseObject(JSON.parseObject(jsonStr).getString("jsonStr"), new TypeReference<>() { + }, Feature.OrderedField); + map.forEach(sig3Map::put); + return true; + } + + /** * 获取快手登录二维码 * * @param accountNo 账户号 diff --git a/src/main/java/cn/fw/freya/task/DataCaptureTask.java b/src/main/java/cn/fw/freya/task/DataCaptureTask.java index b256f56..54c4b4b 100644 --- a/src/main/java/cn/fw/freya/task/DataCaptureTask.java +++ b/src/main/java/cn/fw/freya/task/DataCaptureTask.java @@ -16,6 +16,7 @@ import com.alibaba.fastjson.JSONObject; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.context.ApplicationEventPublisher; +import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import org.springframework.util.CollectionUtils; @@ -50,7 +51,7 @@ public class DataCaptureTask { /** * 每分钟执行多线程同时抓取数据 */ - //@Scheduled(cron = "0 0/1 * * * ?") + @Scheduled(cron = "0 0/1 * * * ?") public void capture() { final ThreadPoolExecutor threadPoolExecutor = ThreadPoolUtil.getThreadPool(); BlockingQueue queue = threadPoolExecutor.getQueue();// 获取工作队列 @@ -96,7 +97,7 @@ public class DataCaptureTask { /** * 每2分钟执行抓取数据 */ - //@Scheduled(fixedRate = 2 * 60 * 1000, initialDelay = 5000) + @Scheduled(fixedRate = 2 * 60 * 1000, initialDelay = 5000) public void captureLivePlayback() { Double durationThreshold = 60d;// 设置直播时长阈值 final Random random = new Random(); -- libgit2 0.22.2