diff --git a/README.md b/README.md
index 00c5c02eb..850a1ac74 100644
--- a/README.md
+++ b/README.md
@@ -23,6 +23,7 @@ RSSHub 是一个轻量、易于扩展的 RSS 生成器,可以给任何奇奇
- UP 主关注用户
- 分区视频
- 视频评论
+ - link 公告
- 微博
- 博主
- 网易云音乐
diff --git a/docs/README.md b/docs/README.md
index d7de3bd05..f8b2e0733 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -165,6 +165,14 @@ s
参数: aid,可在视频页 URL 中找到
+### link 公告
+
+举例: https://rss.now.sh/bilibili/link/news/live
+
+路由: `/bilibili/link/news/:product`
+
+参数: product 公告分类 包括 直播:live 小视频:vc 相簿:wh
+
## 微博
### 博主
diff --git a/router.js b/router.js
index 8847c75d0..38ebb4059 100644
--- a/router.js
+++ b/router.js
@@ -20,6 +20,8 @@ router.get('/bilibili/user/followings/:uid', require('./routes/bilibili/followin
router.get('/bilibili/partion/:tid', require('./routes/bilibili/partion'));
router.get('/bilibili/bangumi/:seasonid', require('./routes/bilibili/bangumi'));
router.get('/bilibili/video/reply/:aid', require('./routes/bilibili/reply'));
+router.get('/bilibili/link/news/:product', require('./routes/bilibili/linkNews'));
+
// // 微博
router.get('/weibo/user/:uid', require('./routes/weibo/user'));
diff --git a/routes/bilibili/linkNews.js b/routes/bilibili/linkNews.js
new file mode 100644
index 000000000..1ec73d4da
--- /dev/null
+++ b/routes/bilibili/linkNews.js
@@ -0,0 +1,46 @@
+const axios = require('axios');
+const art = require('art-template');
+const path = require('path');
+const config = require('../../config');
+
+module.exports = async (ctx) => {
+ const product = ctx.params.product;
+
+ let productTitle = ``;
+
+ switch (product) {
+ case "live":
+ productTitle = `直播`;
+ break;
+ case "vc":
+ productTitle = `小视频`;
+ break;
+ case "wh":
+ productTitle = `相簿`;
+ break;
+
+ }
+
+ const response = await axios({
+ method: 'get',
+ url: `https://api.vc.bilibili.com/news/v1/notice/list?platform=pc&product=${product}&category=all&page_no=1&page_size=20`,
+ headers: {
+ 'User-Agent': config.ua,
+ 'Referer': `https://link.bilibili.com/p/eden/news`
+ }
+ });
+ const data = response.data.data.items;
+
+ ctx.body = art(path.resolve(__dirname, '../../views/rss.art'), {
+ title: `bilibili ${productTitle}公告`,
+ link: `https://link.bilibili.com/p/eden/news#/?tab=${product}&tag=all&page_no=1`,
+ description: `bilibili ${productTitle}公告`,
+ lastBuildDate: new Date().toUTCString(),
+ item: data && data.map((item) => ({
+ title: item.title,
+ description: `${item.mark}
`,
+ pubDate: new Date(item.ctime.replace(' ', 'T') + "+08:00").toUTCString(),
+ link: item.announce_link ? item.announce_link : `https://link.bilibili.com/p/eden/news#/newsdetail?id=${item.id}`
+ })),
+ });
+};
\ No newline at end of file