Commit 28d3e509fd190de764e15c8c0658d36ee52fee55

Authored by 王明元
1 parent 3af221c1

2022年5月27日17:20:24 调整逻辑, 拿到回放数据, 但回放数据与昨天直播不匹配, 标记直播数据

src/main/java/cn/fw/freya/task/DataCaptureTask.java
... ... @@ -120,7 +120,12 @@ public class DataCaptureTask {
120 120 final List<JSONObject> playbackMsg = this.getPlaybackMsg(account);// 获取该人的直播回放信息
121 121 boolean flag = false;
122 122 for (LivePool item : list) {
123   - JSONObject obj = kuaiShouCrawl.setPlaybackUrl(item, playbackMsg, durationThreshold);
  123 + JSONObject obj;
  124 + if (Objects.equals(playbackMsg.size(), 1) && (obj = playbackMsg.get(0)).size() <= 1) {// 表示拿到了回放, 但未找出合适的回放
  125 +
  126 + } else {
  127 + obj = kuaiShouCrawl.setPlaybackUrl(item, playbackMsg, durationThreshold);
  128 + }
124 129 String playbackUrl = obj.getString("playbackUrl");
125 130 Boolean hasInvalidPlayback = obj.getBoolean("hasInvalidPlayback");
126 131 final LivePool livePool = PublicUtil.copy(item, LivePool.class);// 对象拷贝
... ... @@ -166,7 +171,7 @@ public class DataCaptureTask {
166 171 userLivePlayback = kuaiShouCrawl.getUserLivePlayback(playbackSearchKey);
167 172 else
168 173 userLivePlayback = kuaiShouCrawl.getUserLivePlayback(account.getPhoneNo());
169   - return userLivePlayback
  174 + final List<JSONObject> collect = userLivePlayback
170 175 .stream()
171 176 .filter(item -> {
172 177 JSONObject obj = (JSONObject) item;
... ... @@ -181,6 +186,14 @@ public class DataCaptureTask {
181 186 return obj;
182 187 })
183 188 .collect(Collectors.toList());
  189 + if (!CollectionUtils.isEmpty(collect)) {// 找到回放, 筛选结果不为空
  190 + return collect;
  191 + }
  192 + final JSONObject obj = new JSONObject();// 直接无回放数据
  193 + if (!CollectionUtils.isEmpty(userLivePlayback)) {// 找到回放, 但未筛选到适合的回放
  194 + obj.put("hasInvalidPlayback", true);
  195 + }
  196 + return Collections.singletonList(obj);
184 197 }
185 198  
186 199 }
... ...