ehlxr 1 éve
szülő
commit
4de5492ce0

+ 11 - 0
etl-core/src/main/java/com/tzld/crawler/etl/model/vo/CrawlerVideoVO.java

@@ -102,6 +102,8 @@ public class CrawlerVideoVO {
      */
     private Integer height;
 
+    private String strategyType;
+
     @Override
     public String toString() {
         return "CrawlerVideoVO{" +
@@ -125,9 +127,18 @@ public class CrawlerVideoVO {
                 ", crawlerRule='" + crawlerRule + '\'' +
                 ", width=" + width +
                 ", height=" + height +
+                ", strategyType='" + strategyType + '\'' +
                 '}';
     }
 
+    public String getStrategyType() {
+        return strategyType;
+    }
+
+    public void setStrategyType(String strategyType) {
+        this.strategyType = strategyType;
+    }
+
     public String getUserName() {
         return userName;
     }

+ 7 - 6
etl-core/src/main/java/com/tzld/crawler/etl/service/impl/EtlServiceImpl.java

@@ -185,7 +185,8 @@ public class EtlServiceImpl implements EtlService {
                         log.error("feishu.sheet.token.map config of {} is null", platform);
                         return;
                     }
-                    String sheetId = feishuSheetIdMap.get(platform);
+                    String strategyType = Strings.nullToEmpty(param.getStrategyType());
+                    String sheetId = feishuSheetIdMap.get(platform + strategyType);
                     if (Strings.isNullOrEmpty(sheetToken)) {
                         log.error("feishu.sheet.id.map config of {} is null", platform);
                         return;
@@ -198,12 +199,12 @@ public class EtlServiceImpl implements EtlService {
                     List<Object> value = new ArrayList<>();
                     DateTimeFormatter formatter = DateTimeFormatter.ofPattern(Constant.STANDARD_FORMAT);
                     value.add(data.getTitleScore());
-                    value.add(data.getOutVideoId());
+                    value.add(crawlerVideo.getVideoId());
                     value.add(formatter.format(LocalDateTime.ofInstant(Instant.ofEpochMilli(System.currentTimeMillis()), ZoneId.systemDefault())));
                     value.add(strategy);
-                    value.add(crawlerVideo.getVideoId());
+                    value.add(data.getOutVideoId());
                     value.add(data.getVideoTitle());
-                    value.add(String.format(adminCmsUrl, crawlerVideo.getUserId()));
+                    value.add(String.format(adminCmsUrl, crawlerVideo.getVideoId()));
                     value.add(data.getPlayCnt());
                     value.add(data.getCommentCnt());
                     value.add(data.getLikeCnt());
@@ -212,14 +213,14 @@ public class EtlServiceImpl implements EtlService {
                     value.add(data.getWidth() + "*" + data.getHeight());
                     value.add(data.getPublishTime());
                     value.add(data.getUserName());
-                    value.add(data.getUserId());
+                    value.add(data.getOutUserId());
                     value.add(data.getAvatarUrl());
                     value.add(data.getCoverUrl());
                     value.add(data.getVideoUrl());
                     values.add(value);
 
                     fsResp = FeishuUtils.updateValues(feishuAppid, feishuAppsecret, sheetToken,
-                            feishuRangeMap.get(platform), values);
+                            feishuRangeMap.get(platform + strategyType), values);
                     log.debug("update feishu sheet value response is {}", fsResp);
 
                     slsService.log("message", "视频已保存至云文档", "crawler", platform, "mode", strategy);

+ 5 - 3
etl-core/src/main/java/com/tzld/crawler/etl/service/strategy/handler/TitleScoreHandler.java

@@ -73,8 +73,8 @@ public class TitleScoreHandler extends StrategyAbstractHandler {
     @Value(("${title.score.word.feishu.range:}"))
     private String scoreWordSheetRange;
 
-    private Map<String, Double> scoreWordMap;
-    private List<String> stopWorlds;
+    private Map<String, Double> scoreWordMap = new HashMap<>();
+    private List<String> stopWorlds = new ArrayList<>();
 
     public TitleScoreHandler(SlsService slsService) {
         this.slsService = slsService;
@@ -93,7 +93,9 @@ public class TitleScoreHandler extends StrategyAbstractHandler {
             score += scoreWordMap.getOrDefault(word, 0.0);
         }
 
-        if (score <= 0.3) {
+        // TODO: test
+        // if (score <= 0.3) {
+        if (score <= -1) {
             log.warn("title score is less than 0.3 {}", param);
             slsService.log("mode", param.getStrategy(), "crawler", param.getPlatform(), "message", "权重分:" + score + "<=0.3");
             return null;