mirror of
https://github.com/DIYgod/RSSHub.git
synced 2025-12-10 15:21:59 +08:00
feat: add SJTU/tongqu latest activities (#3757)
This commit is contained in:
@@ -866,6 +866,10 @@ https://rsshub.app/**nuist**/`bulletin` 或 https://rsshub.app/**nuist**/`bullet
|
|||||||
|
|
||||||
</Route>
|
</Route>
|
||||||
|
|
||||||
|
### 同去网最新活动
|
||||||
|
|
||||||
|
<Route author="SeanChao" example="/sjtu/tongqu" path="/universities/sjtu/tongqu"/>
|
||||||
|
|
||||||
## 上海科技大学
|
## 上海科技大学
|
||||||
|
|
||||||
### 信息科技与技术学院活动
|
### 信息科技与技术学院活动
|
||||||
|
|||||||
@@ -570,6 +570,7 @@ router.get('/sjtu/seiee/xsb/:type?', require('./routes/universities/sjtu/seiee/x
|
|||||||
|
|
||||||
router.get('/sjtu/gs/tzgg/:type?', require('./routes/universities/sjtu/gs/tzgg'));
|
router.get('/sjtu/gs/tzgg/:type?', require('./routes/universities/sjtu/gs/tzgg'));
|
||||||
router.get('/sjtu/jwc/:type?', require('./routes/universities/sjtu/jwc'));
|
router.get('/sjtu/jwc/:type?', require('./routes/universities/sjtu/jwc'));
|
||||||
|
router.get('/sjtu/tongqu', require('./routes/universities/sjtu/tongqu/activity'));
|
||||||
|
|
||||||
// 江南大学
|
// 江南大学
|
||||||
router.get('/ju/jwc/:type?', require('./routes/universities/ju/jwc'));
|
router.get('/ju/jwc/:type?', require('./routes/universities/ju/jwc'));
|
||||||
|
|||||||
30
lib/routes/universities/sjtu/tongqu/activity.js
Normal file
30
lib/routes/universities/sjtu/tongqu/activity.js
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
const got = require('@/utils/got');
|
||||||
|
const cheerio = require('cheerio');
|
||||||
|
const url = require('url');
|
||||||
|
|
||||||
|
const urlRoot = 'https://tongqu.sjtu.edu.cn/';
|
||||||
|
|
||||||
|
module.exports = async (ctx) => {
|
||||||
|
const sectionLink = url.resolve(urlRoot, 'act/type?type=-1&status=0&order=act.create_time');
|
||||||
|
|
||||||
|
const response = await got(sectionLink);
|
||||||
|
const data = response.body;
|
||||||
|
const $ = cheerio.load(data);
|
||||||
|
|
||||||
|
const activityInfo = $('body > script:nth-child(2)')
|
||||||
|
.html()
|
||||||
|
.match('var g_init_type_acts = (.*?);')[1];
|
||||||
|
const activities = JSON.parse(activityInfo).acts;
|
||||||
|
const out = activities.map((i) => {
|
||||||
|
const title = '【' + i.typename + '】' + i.name;
|
||||||
|
const link = url.resolve(urlRoot, '/act/' + i.actid);
|
||||||
|
const single = { title, link };
|
||||||
|
return single;
|
||||||
|
});
|
||||||
|
|
||||||
|
ctx.state.data = {
|
||||||
|
title: '同去网最新活动',
|
||||||
|
link: sectionLink,
|
||||||
|
item: out,
|
||||||
|
};
|
||||||
|
};
|
||||||
Reference in New Issue
Block a user