diff --git a/lib/routes/bilibili/coin.js b/lib/routes/bilibili/coin.js
index dcebd4ca70..43929dd420 100644
--- a/lib/routes/bilibili/coin.js
+++ b/lib/routes/bilibili/coin.js
@@ -25,7 +25,7 @@ module.exports = async (ctx) => {
title: item.title,
description: `${item.desc}${!disableEmbed ? `
${utils.iframe(item.aid)}` : ''}
`,
pubDate: new Date(item.time * 1000).toUTCString(),
- link: `https://www.bilibili.com/video/av${item.aid}`,
+ link: item.time > utils.bvidTime && item.bvid ? `https://www.bilibili.com/video/${item.bvid}` : `https://www.bilibili.com/video/av${item.aid}`,
})),
};
};
diff --git a/lib/routes/bilibili/fav.js b/lib/routes/bilibili/fav.js
index 5882839907..5e4612b481 100644
--- a/lib/routes/bilibili/fav.js
+++ b/lib/routes/bilibili/fav.js
@@ -29,7 +29,7 @@ module.exports = async (ctx) => {
title: item.title,
description: `${item.intro}${!disableEmbed ? `
${utils.iframe(item.id)}` : ''}
`,
pubDate: new Date(item.fav_time * 1000).toUTCString(),
- link: `https://www.bilibili.com/video/av${item.id}`,
+ link: item.fav_time > utils.bvidTime && item.bvid ? `https://www.bilibili.com/video/${item.bvid}` : `https://www.bilibili.com/video/av${item.id}`,
})),
};
};
diff --git a/lib/routes/bilibili/followings_video.js b/lib/routes/bilibili/followings_video.js
index 3f59fe7bf6..bb3dc020cc 100644
--- a/lib/routes/bilibili/followings_video.js
+++ b/lib/routes/bilibili/followings_video.js
@@ -31,7 +31,7 @@ module.exports = async (ctx) => {
title: card_data.title,
description: `${card_data.desc}${!disableEmbed ? `
${utils.iframe(card_data.aid)}` : ''}
`,
pubDate: new Date(card_data.pubdate * 1000).toUTCString(),
- link: `https://www.bilibili.com/video/av${card_data.aid}`,
+ link: card_data.pubdate > utils.bvidTime && card_data.bvid ? `https://www.bilibili.com/video/${card_data.bvid}` : `https://www.bilibili.com/video/av${card_data.aid}`,
author: card.desc.user_profile.info.uname,
};
return Promise.resolve(item);
diff --git a/lib/routes/bilibili/partion-ranking.js b/lib/routes/bilibili/partion-ranking.js
index 5c6b65452a..0c22f94453 100644
--- a/lib/routes/bilibili/partion-ranking.js
+++ b/lib/routes/bilibili/partion-ranking.js
@@ -44,7 +44,7 @@ module.exports = async (ctx) => {
title: `${item.title}`,
description: `${item.description}${!disableEmbed ? `
${utils.iframe(item.id)}` : ''}

Tags:${item.tag}`,
pubDate: new Date(item.pubdate).toUTCString(),
- link: `https://www.bilibili.com/video/av${item.id}`,
+ link: item.pubdate > utils.bvidTime && item.bvid ? `https://www.bilibili.com/video/${item.bvid}` : `https://www.bilibili.com/video/av${item.id}`,
author: item.author,
};
items.push(item);
diff --git a/lib/routes/bilibili/partion.js b/lib/routes/bilibili/partion.js
index 1d13157a55..cbe50aceed 100644
--- a/lib/routes/bilibili/partion.js
+++ b/lib/routes/bilibili/partion.js
@@ -29,7 +29,7 @@ module.exports = async (ctx) => {
title: `${item.title}`,
description: `${item.desc}${!disableEmbed ? `
${utils.iframe(item.aid)}` : ''}
`,
pubDate: new Date(item.pubdate * 1000).toUTCString(),
- link: `https://www.bilibili.com/video/av${item.aid}`,
+ link: item.pubdate > utils.bvidTime && item.bvid ? `https://www.bilibili.com/video/${item.bvid}` : `https://www.bilibili.com/video/av${item.aid}`,
author: item.owner.name,
})),
};
diff --git a/lib/routes/bilibili/ranking.js b/lib/routes/bilibili/ranking.js
index aa71c6267a..a8091ca700 100644
--- a/lib/routes/bilibili/ranking.js
+++ b/lib/routes/bilibili/ranking.js
@@ -29,28 +29,15 @@ module.exports = async (ctx) => {
list = list.concat(list[i].others);
}
}
- list = list.map((i) => i.aid).slice(0, 100);
- const detailsResponse = await got({
- method: 'get',
- url: `https://api.bilibili.com/x/article/archives?ids=${list.join(',')}`,
- });
ctx.state.data = {
title: `bilibili ${day}日排行榜-${rid_type}-${arc_type1}`,
link: `https://www.bilibili.com/ranking/all/${rid}/0/${day}`,
- item: list.map((aid) => {
- const data = detailsResponse.data.data[aid];
- if (data) {
- return {
- title: data.title,
- description: `${data.desc}${!disableEmbed ? `
${utils.iframe(aid)}` : ''}
`,
- pubDate: new Date(data.pubdate * 1000).toUTCString(),
- author: data.owner.name,
- link: `https://www.bilibili.com/video/av${aid}`,
- guid: `https://www.bilibili.com/video/av${aid}`,
- };
- } else {
- return null;
- }
- }),
+ item: list.map((item) => ({
+ title: item.title,
+ description: `${item.description || item.title}${!disableEmbed ? `
${utils.iframe(item.aid, null, item.bvid)}` : ''}
`,
+ pubDate: data.create && new Date(data.create).toUTCString(),
+ author: data.author,
+ link: !data.create || (new Date(data.create) / 1000 > utils.bvidTime && item.bvid) ? `https://www.bilibili.com/video/${item.bvid}` : `https://www.bilibili.com/video/av${item.aid}`,
+ })),
};
};
diff --git a/lib/routes/bilibili/userChannel.js b/lib/routes/bilibili/userChannel.js
index 1089c38997..62df158e0b 100644
--- a/lib/routes/bilibili/userChannel.js
+++ b/lib/routes/bilibili/userChannel.js
@@ -38,7 +38,7 @@ module.exports = async (ctx) => {
title: item.title,
description: `${item.desc}${!disableEmbed ? `
${utils.iframe(item.aid)}` : ''}
`,
pubDate: new Date(item.pubdate * 1000).toUTCString(),
- link: `https://www.bilibili.com/video/av${item.aid}`,
+ link: item.pubdate > utils.bvidTime && item.bvid ? `https://www.bilibili.com/video/${item.bvid}` : `https://www.bilibili.com/video/av${item.aid}`,
author: userName,
})),
};
diff --git a/lib/routes/bilibili/userFav.js b/lib/routes/bilibili/userFav.js
index 9e07152a4f..43d1998d54 100644
--- a/lib/routes/bilibili/userFav.js
+++ b/lib/routes/bilibili/userFav.js
@@ -28,7 +28,7 @@ module.exports = async (ctx) => {
title: item.title,
description: `${item.desc}${!disableEmbed ? `
${utils.iframe(item.aid)}` : ''}
`,
pubDate: new Date(item.fav_at * 1000).toUTCString(),
- link: `https://www.bilibili.com/video/av${item.aid}`,
+ link: item.fav_at > utils.bvidTime && item.bvid ? `https://www.bilibili.com/video/${item.bvid}` : `https://www.bilibili.com/video/av${item.aid}`,
})),
};
};
diff --git a/lib/routes/bilibili/utils.js b/lib/routes/bilibili/utils.js
index 3393cf2fd6..e458926488 100644
--- a/lib/routes/bilibili/utils.js
+++ b/lib/routes/bilibili/utils.js
@@ -5,4 +5,5 @@ const iframe = (aid, page, bvid) =>
module.exports = {
iframe,
+ bvidTime: 1589990400,
};
diff --git a/lib/routes/bilibili/video.js b/lib/routes/bilibili/video.js
index 1f1afca7fa..a23ef99777 100644
--- a/lib/routes/bilibili/video.js
+++ b/lib/routes/bilibili/video.js
@@ -27,7 +27,7 @@ module.exports = async (ctx) => {
title: item.title,
description: `${item.description}${!disableEmbed ? `
${utils.iframe(item.aid)}` : ''}
`,
pubDate: new Date(item.created * 1000).toUTCString(),
- link: `https://www.bilibili.com/video/av${item.aid}`,
+ link: item.created > utils.bvidTime && item.bvid ? `https://www.bilibili.com/video/${item.bvid}` : `https://www.bilibili.com/video/av${item.aid}`,
author: name,
})),
};
diff --git a/lib/routes/bilibili/weekly_recommend.js b/lib/routes/bilibili/weekly_recommend.js
index 029c2ff447..e2867b97c2 100644
--- a/lib/routes/bilibili/weekly_recommend.js
+++ b/lib/routes/bilibili/weekly_recommend.js
@@ -30,7 +30,7 @@ module.exports = async (ctx) => {
item: data.map((item) => ({
title: item.title,
description: `${weekly_name} ${item.title}
${item.rcmd_reason}
${!disableEmbed ? `${utils.iframe(item.param)}` : ''}
`,
- link: `https://www.bilibili.com/video/av${item.param}`,
+ link: weekly_number > 60 && item.bvid ? `https://www.bilibili.com/video/${item.bvid}` : `https://www.bilibili.com/video/av${item.param}`,
})),
};
};