From 0d4185d02a1f1b5de901c62013f9315a2c89191a Mon Sep 17 00:00:00 2001 From: shanmite Date: Sun, 12 Dec 2021 15:04:37 +0800 Subject: [PATCH] fix(Searcher): getLotteryInfoByUID(#89) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 是否获取点赞信息 --- lib/core/searcher.js | 49 +++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 26 deletions(-) diff --git a/lib/core/searcher.js b/lib/core/searcher.js index d329e5b..b757ff6 100644 --- a/lib/core/searcher.js +++ b/lib/core/searcher.js @@ -241,38 +241,35 @@ class Searcher { } }) .reduce(async (pre, cur) => { - const results = await pre - , { origin_dynamic_id } = cur; - - const card = await bili.getOneDynamicByDyid(origin_dynamic_id) - - if (card) { - await utils.delay(get_dynamic_detail_wait) - - const { is_liked } = parseDynamicCard(card) + let + results = await pre, + { origin_dynamic_id } = cur, + is_liked = false; + if (!check_if_duplicated || check_if_duplicated === 2) { + const card = await bili.getOneDynamicByDyid(origin_dynamic_id) log.info('获取动态', `查看源动态(${origin_dynamic_id})是否点赞 (${length--})`) - if (is_liked) { - log.info('获取动态', `动态(${origin_dynamic_id})已转发过`) - } else { - return [...results, { - lottery_info_type: 'uid', - create_time: cur.origin_create_time, - is_liked, - uids: [cur.uid, cur.origin_uid], - uname: cur.origin_uname, - ctrl: [], - dyid: cur.origin_dynamic_id, - rid: cur.origin_rid_str, - des: cur.origin_description, - type: cur.orig_type, - hasOfficialLottery: cur.origin_hasOfficialLottery - }] + if (card) { + ({ is_liked } = parseDynamicCard(card)) } + await utils.delay(get_dynamic_detail_wait) } - return results + results.push({ + lottery_info_type: 'uid', + create_time: cur.origin_create_time, + is_liked, + uids: [cur.uid, cur.origin_uid], + uname: cur.origin_uname, + ctrl: [], + dyid: cur.origin_dynamic_id, + rid: cur.origin_rid_str, + des: cur.origin_description, + type: cur.orig_type, + hasOfficialLottery: cur.origin_hasOfficialLottery + }) + return results }, Promise.resolve([])) log.info('获取动态', `成功获取用户${UID}的动态信息`);