diff --git a/docs/university.md b/docs/university.md
index 066129c9b5..fedeb1cb4e 100644
--- a/docs/university.md
+++ b/docs/university.md
@@ -2989,6 +2989,26 @@ jsjxy.hbut.edu.cn 证书链不全,自建 RSSHub 可设置环境变量 NODE_TLS
+### 财经学院
+
+
+
+| 栏目 | 学院新闻 | 学院通知 |
+| -- | ---- | ---- |
+| 代码 | xyxw | xytz |
+
+
+
+### 信息学院
+
+
+
+| 栏目 | 学院新闻 | 通知公告 | 教育教学 | 学生工作 | 招生就业 |
+| -- | ---- | ---- | ---- | ---- | ---- |
+| 代码 | xyxw | tzgg | jyjx | xsgz | zsjy |
+
+
+
## 信阳师范学院
### 高等教育自学考试办公室
diff --git a/lib/v2/swpu/cjxy.js b/lib/v2/swpu/cjxy.js
new file mode 100644
index 0000000000..33ef336e0b
--- /dev/null
+++ b/lib/v2/swpu/cjxy.js
@@ -0,0 +1,53 @@
+const { parseDate } = require('@/utils/parse-date');
+const cheerio = require('cheerio');
+const got = require('@/utils/got');
+const timezone = require('@/utils/timezone');
+
+module.exports = async (ctx) => {
+ const url = `https://www.swpu.edu.cn/nccjxy/xydt/${ctx.params.code}.htm`;
+
+ const res = await got(url);
+ const $ = cheerio.load(res.data);
+
+ let title = $('title').text();
+ title = title.substring(0, title.indexOf('-'));
+
+ const items = $('.main_conRCb > ul > li')
+ .toArray()
+ .map((elem) => ({
+ title: $('a[href]', elem).text().trim(),
+ pubDate: timezone(parseDate($('span', elem).text(), 'YYYY年MM月DD日'), +8),
+ link: `https://www.swpu.edu.cn/nccjxy/${$('a[href]', elem).attr('href').split('../')[1]}`,
+ }));
+
+ const out = await Promise.all(
+ items.map((item) =>
+ ctx.cache.tryGet(item.link, async () => {
+ const res = await got(item.link);
+ const $ = cheerio.load(res.data);
+ if ($('title').text().startsWith('系统提示')) {
+ item.author = '系统';
+ item.description = '无权访问';
+ } else {
+ item.author = '财经学院';
+ item.description = $('.v_news_content').html();
+ for (const elem of $('.v_news_content p')) {
+ if ($(elem).css('text-align') === 'right') {
+ item.author = $(elem).text();
+ break;
+ }
+ }
+ }
+ return item;
+ })
+ )
+ );
+
+ ctx.state.data = {
+ title: `西南石油大学财经学院 ${title}`,
+ link: url,
+ description: `西南石油大学财经学院 ${title}`,
+ language: 'zh-CN',
+ item: out,
+ };
+};
diff --git a/lib/v2/swpu/is.js b/lib/v2/swpu/is.js
new file mode 100644
index 0000000000..cde903df9d
--- /dev/null
+++ b/lib/v2/swpu/is.js
@@ -0,0 +1,53 @@
+const { parseDate } = require('@/utils/parse-date');
+const cheerio = require('cheerio');
+const got = require('@/utils/got');
+const timezone = require('@/utils/timezone');
+
+module.exports = async (ctx) => {
+ const url = `https://www.swpu.edu.cn/is/xydt/${ctx.params.code}.htm`;
+
+ const res = await got(url);
+ const $ = cheerio.load(res.data);
+
+ let title = $('title').text();
+ title = title.substring(0, title.indexOf('-'));
+
+ const items = $('tr[height="20"]')
+ .toArray()
+ .map((elem) => ({
+ title: $('a[title]', elem).text().trim(),
+ pubDate: timezone(parseDate($('td:eq(1)', elem).text(), 'YYYY年MM月DD日'), +8),
+ link: `https://www.swpu.edu.cn/is/${$('a[href]', elem).attr('href').split('../')[1]}`,
+ }));
+
+ const out = await Promise.all(
+ items.map((item) =>
+ ctx.cache.tryGet(item.link, async () => {
+ const res = await got(item.link);
+ const $ = cheerio.load(res.data);
+ if ($('title').text().startsWith('系统提示')) {
+ item.author = '系统';
+ item.description = '无权访问';
+ } else {
+ item.author = '学院';
+ item.description = $('.v_news_content').html();
+ for (const elem of $('.v_news_content p')) {
+ if ($(elem).css('text-align') === 'right') {
+ item.author = $(elem).text();
+ break;
+ }
+ }
+ }
+ return item;
+ })
+ )
+ );
+
+ ctx.state.data = {
+ title: `西南石油大学信息学院 ${title}`,
+ link: url,
+ description: `西南石油大学信息学院 ${title}`,
+ language: 'zh-CN',
+ item: out,
+ };
+};
diff --git a/lib/v2/swpu/maintainer.js b/lib/v2/swpu/maintainer.js
index 3ce9c2e4bb..7e603e379e 100644
--- a/lib/v2/swpu/maintainer.js
+++ b/lib/v2/swpu/maintainer.js
@@ -1,6 +1,8 @@
module.exports = {
'/bgw/:code': ['CYTMWIA'],
+ '/cjxy/:code': ['RiverTwilight'],
'/dean/:code': ['CYTMWIA'],
'/dxy/:code': ['CYTMWIA'],
+ '/is/:code': ['RiverTwilight'],
'/scs/:code': ['CYTMWIA'],
};
diff --git a/lib/v2/swpu/radar.js b/lib/v2/swpu/radar.js
index 00b13ea650..68d2392709 100644
--- a/lib/v2/swpu/radar.js
+++ b/lib/v2/swpu/radar.js
@@ -26,6 +26,18 @@ module.exports = {
source: ['/'],
target: '',
},
+ {
+ title: '信息学院',
+ docs: 'https://docs.rsshub.app/university.html#xi-nan-shi-you-da-xue',
+ source: ['/'],
+ target: '',
+ },
+ {
+ title: '财经学院',
+ docs: 'https://docs.rsshub.app/university.html#xi-nan-shi-you-da-xue',
+ source: ['/'],
+ target: '',
+ },
],
},
};
diff --git a/lib/v2/swpu/router.js b/lib/v2/swpu/router.js
index c548310ca9..9fe26808c2 100644
--- a/lib/v2/swpu/router.js
+++ b/lib/v2/swpu/router.js
@@ -1,6 +1,8 @@
module.exports = function (router) {
router.get('/bgw/:code', require('./bgw'));
+ router.get('/cjxy/:code', require('./cjxy'));
router.get('/dean/:code', require('./dean'));
router.get('/dxy/:code', require('./dxy'));
+ router.get('/is/:code', require('./is'));
router.get('/scs/:code', require('./scs'));
};