From 28567b48aa9a26ba7b8c341bdab9fe70e71db4a1 Mon Sep 17 00:00:00 2001 From: "Q." Date: Wed, 4 Jun 2025 15:48:52 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=AF=B9=E5=93=94=E5=93=A9?= =?UTF-8?q?=E5=93=94=E5=93=A9=E5=8A=A8=E6=80=81=E4=B8=93=E6=A0=8F=E7=9A=84?= =?UTF-8?q?=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/bilibili.js | 32 +++++++++++++++++++++++--------- 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/utils/bilibili.js b/utils/bilibili.js index da1d9f7..d7d8563 100644 --- a/utils/bilibili.js +++ b/utils/bilibili.js @@ -405,16 +405,30 @@ export async function getDynamic(dynamicId, SESSDATA) { Cookie: `SESSDATA=${ SESSDATA }` }, }).then(resp => { - const dynamicData = resp.data.data.card - const card = JSON.parse(dynamicData.card) - const dynamicOrigin = card.item - const dynamicDesc = dynamicOrigin.description || dynamicOrigin.content - const pictures = dynamicOrigin.pictures || '' + const innerCardObject = resp.data.data.card; + const card = JSON.parse(innerCardObject.card); + const dynamicType = innerCardObject.desc?.type; - let dynamicSrc = [] - for (let pic of pictures) { - const img_src = pic.img_src - dynamicSrc.push(img_src) + let dynamicDesc = ''; + let pictures = []; + // 目前的api只有返回专栏部分文字以及专栏封面 + if (dynamicType === 64) { + dynamicDesc = `【专栏】${card.title || ''}\n${card.summary || ''}`; + pictures = card.image_urls || []; + } else { + const dynamicOrigin = card.item; + dynamicDesc = dynamicOrigin?.description || dynamicOrigin?.content; + pictures = dynamicOrigin?.pictures || []; + } + + let dynamicSrc = []; + if (Array.isArray(pictures)) { + for (let pic of pictures) { + const img_src = typeof pic === 'string' ? pic : pic?.img_src; + if (img_src) { + dynamicSrc.push(img_src); + } + } } // console.log(dynamic_src) return {