diff --git a/docs/social-media.md b/docs/social-media.md
index a3bb1a1696..ae01471050 100644
--- a/docs/social-media.md
+++ b/docs/social-media.md
@@ -160,7 +160,7 @@
-
+
| 全站 | 动画 | 国创相关 | 音乐 | 舞蹈 | 游戏 | 科技 | 生活 | 鬼畜 | 时尚 | 娱乐 | 影视 |
| ---- | ---- | -------- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- |
diff --git a/lib/router.js b/lib/router.js
index 4933a71cc4..461f5469c8 100644
--- a/lib/router.js
+++ b/lib/router.js
@@ -115,7 +115,7 @@ router.get('/bilibili/fav/:uid/:fid', require('./routes/bilibili/fav'));
router.get('/bilibili/blackboard', require('./routes/bilibili/blackboard'));
router.get('/bilibili/mall/new', require('./routes/bilibili/mallNew'));
router.get('/bilibili/mall/ip/:id', require('./routes/bilibili/mallIP'));
-router.get('/bilibili/ranking/:rid?/:day?', require('./routes/bilibili/ranking'));
+router.get('/bilibili/ranking/:rid?/:day?/:arc_type?', require('./routes/bilibili/ranking'));
router.get('/bilibili/user/channel/:uid/:cid', require('./routes/bilibili/userChannel'));
router.get('/bilibili/topic/:topic', require('./routes/bilibili/topic'));
router.get('/bilibili/audio/:id', require('./routes/bilibili/audio'));
diff --git a/lib/routes/bilibili/ranking.js b/lib/routes/bilibili/ranking.js
index 0c20a322dd..849b7ddd5b 100644
--- a/lib/routes/bilibili/ranking.js
+++ b/lib/routes/bilibili/ranking.js
@@ -3,12 +3,17 @@ const axios = require('../../utils/axios');
module.exports = async (ctx) => {
const rid = ctx.params.rid || '0';
const day = ctx.params.day || '3';
-
+ const arc_type = ctx.params.arc_type || '1';
+ const arc_type1 = arc_type === '0' ? '全部投稿' : '近期投稿';
+ const rid_1 = ['0', '1', '168', '3', '129', '4', '36', '160', '119', '155', '5', '181'];
+ const rid_2 = ['全站', '动画', '国创相关', '音乐', '舞蹈', '游戏', '科技', '生活', '鬼畜', '时尚', '娱乐', '影视'];
+ const rid_i = rid_1.indexOf(arc_type);
+ const rid_type = rid_2[rid_i];
const response = await axios({
method: 'get',
- url: `https://api.bilibili.com/x/web-interface/ranking?jsonp=jsonp&rid=${rid}&day=${day}&type=1&arc_type=0&callback=__jp0`,
+ url: `https://api.bilibili.com/x/web-interface/ranking?jsonp=jsonp&rid=${rid}&day=${day}&type=1&arc_type=${arc_type}&callback=__jp0`,
headers: {
- Referer: `https://www.bilibili.com/ranking/all/${rid}/0/${day}`,
+ Referer: `https://www.bilibili.com/ranking/all/${rid}/${arc_type}/${day}`,
},
});
@@ -24,11 +29,11 @@ module.exports = async (ctx) => {
}
ctx.state.data = {
- title: `bilibili ${day}日排行榜-${rid}`,
+ title: `bilibili ${day}日排行榜-${rid_type}-${arc_type1}`,
link: `https://www.bilibili.com/ranking/all/${rid}/0/${day}`,
item: list.map((item) => ({
title: item.title,
- description: `作者:${item.author}
播放量:${item.play}
时长:${item.duration}
`,
+ description: `作者:${item.author}
播放量:${item.play}
时长:${item.duration}
综合得分:${item.pts}
弹幕:${item.video_review}
`,
link: `https://www.bilibili.com/video/av${item.aid}`,
})),
};