diff --git a/lib/core/searcher.js b/lib/core/searcher.js index 36d97df..1d34b7a 100644 --- a/lib/core/searcher.js +++ b/lib/core/searcher.js @@ -80,8 +80,17 @@ function parseDynamicCard(dynamic_detail_card) { obj.ctrl = (extendjsonToJson.ctrl) || []; /* 预约抽奖信息 */ if (extendjsonToJsonHidden.reserve) { - let { reserve_id, reserve_lottery } = extendjsonToJsonHidden.reserve; - obj.reserve_id = reserve_lottery === 1 ? reserve_id : 0; + let status = (((dynamic_detail_card || {}) + .display || {}) + .add_on_card_info || []) + .map(it => (((it || {}) + .reserve_attach_card || {}) + .reserve_button || {}) + .status || 2)[0]; + if (status === 1) { + let { reserve_id } = extendjsonToJsonHidden.reserve; + obj.reserve_id = reserve_id || 0; + } } /* 是否有官方抽奖 */ obj.hasOfficialLottery = extension && extension.lott && true; diff --git a/lib/net/bili.js b/lib/net/bili.js index ca3d9a4..ef2d367 100644 --- a/lib/net/bili.js +++ b/lib/net/bili.js @@ -837,6 +837,9 @@ const bili_client = { case 0: log.info('预约抽奖', '预约成功'); return 0; + case 7604003: + log.warn('预约抽奖', '重复预约'); + return 0; default: log.error('预约抽奖', `未知错误\n${responseText}`); return 1;