feat(route): add bilibili UP 主点赞视频 (#14596)

This commit is contained in:
ygguorun 2024-03-03 13:56:51 +08:00 committed by GitHub
parent 6a3d132008
commit 0d02f04a44
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 47 additions and 0 deletions

View File

@ -0,0 +1,35 @@
import got from '@/utils/got';
const cache = require('./cache');
const utils = require('./utils');
import { parseDate } from '@/utils/parse-date';
module.exports = async (ctx) => {
const uid = ctx.req.param('uid');
const disableEmbed = ctx.req.param('disableEmbed');
const name = await cache.getUsernameFromUID(ctx, uid);
const response = await got({
url: `https://api.bilibili.com/x/space/like/video?vmid=${uid}`,
headers: {
Referer: `https://space.bilibili.com/${uid}/`,
},
});
const { data, code, message } = response.data;
if (code) {
throw new Error(message ?? code);
}
ctx.set('data', {
title: `${name} 的 bilibili 点赞视频`,
link: `https://space.bilibili.com/${uid}`,
description: `${name} 的 bilibili 点赞视频`,
item: data.list.map((item) => ({
title: item.title,
description: `${item.desc}${disableEmbed ? '' : `<br><br>${utils.iframe(item.aid)}`}<br><img src='${item.pic}'>`,
pubDate: parseDate(item.pubdate * 1000),
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,
})),
});
};

View File

@ -31,6 +31,7 @@ module.exports = {
'/user/fav/:uid/:disableEmbed?': ['DIYgod'],
'/user/followers/:uid/:loginUid': ['Qixingchen'],
'/user/followings/:uid/:loginUid': ['Qixingchen'],
'/user/like/:uid/:disableEmbed?': ['ygguorun'],
'/user/video/:uid/:disableEmbed?': ['DIYgod'],
'/video/danmaku/:bvid/:pid?': ['Qixingchen'],
'/video/page/:bvid/:disableEmbed?': ['sxzz'],

View File

@ -102,6 +102,12 @@ module.exports = {
source: '/:uid',
target: '/bilibili/user/coin/:uid',
},
{
title: 'UP 主点赞视频',
docs: 'https://docs.rsshub.app/routes/social-media#bilibili',
source: '/:uid',
target: '/bilibili/user/like/:uid',
},
{
title: 'UP 主粉丝',
docs: 'https://docs.rsshub.app/routes/social-media#bilibili',

View File

@ -31,6 +31,7 @@ export default (router) => {
router.get('/user/fav/:uid/:disableEmbed?', './user-fav');
router.get('/user/followers/:uid/:loginUid', './followers');
router.get('/user/followings/:uid/:loginUid', './followings');
router.get('/user/like/:uid/:disableEmbed?', './like');
router.get('/user/video/:uid/:disableEmbed?', './video');
router.get('/user/video-all/:uid/:disableEmbed?', './video-all');
router.get('/video/danmaku/:bvid/:pid?', './danmaku');

View File

@ -67,6 +67,10 @@
<Route author="DIYgod" example="/bilibili/user/coin/208259" path="/bilibili/user/coin/:uid/:disableEmbed?" paramsDesc={['用户 id, 可在 UP 主主页中找到', '默认为开启内嵌视频, 任意值为关闭']} radar="1" />
### UP 主点赞视频 {#bilibili-up-zhu-dian-zan-shi-pin}
<Route author="ygguorun" example="/bilibili/user/like/208259" path="/bilibili/user/like/:uid/:disableEmbed?" paramsDesc={['用户 id, 可在 UP 主主页中找到', '默认为开启内嵌视频, 任意值为关闭']} radar="1" />
### UP 主粉丝 {#bilibili-up-zhu-fen-si}
<Route author="Qixingchen" example="/bilibili/user/followers/2267573/3" path="/bilibili/user/followers/:uid/:loginUid" paramsDesc={['用户 id, 可在 UP 主主页中找到','用于登入的用户id,需要配置对应的 Cookie 值']} radar="1" configRequired="1">