diff --git a/docs/README.md b/docs/README.md old mode 100644 new mode 100755 index dd52ebc7c4..5011050ef2 --- a/docs/README.md +++ b/docs/README.md @@ -1827,7 +1827,7 @@ https://rsshub.app/**nuist**/`bulletin` 或 https://rsshub.app/**nuist**/`bullet ### 华中科技大学 - + | 最新 | 行政 | 人事 | 科研 | 讲座 | 本科生 | 研究生 | 学工 | | ---- | ---- | ---- | ---- | ---- | ------ | ------ | ---- | @@ -1835,7 +1835,7 @@ https://rsshub.app/**nuist**/`bulletin` 或 https://rsshub.app/**nuist**/`bullet - + ### 山东大学 diff --git a/lib/router.js b/lib/router.js old mode 100644 new mode 100755 index 9e5ffb8cb6..f0a9ffdf34 --- a/lib/router.js +++ b/lib/router.js @@ -667,6 +667,8 @@ router.get('/kmust/job/jobfairs', require('./routes/universities/kmust/job/jobfa // 华中科技大学 router.get('/hust/auto/notice/:type?', require('./routes/universities/hust/auto/notice')); router.get('/hust/auto/news/', require('./routes/universities/hust/auto/news')); +router.get('/hust/aia/news/', require('./routes/universities/hust/aia/news')); +router.get('/hust/aia/notice/:type?', require('./routes/universities/hust/aia/notice')); // 山东大学 router.get('/sdu/grad/academic', require('./routes/universities/sdu/grad/academic')); diff --git a/lib/routes/universities/hust/aia/news.js b/lib/routes/universities/hust/aia/news.js new file mode 100755 index 0000000000..eaeaafa802 --- /dev/null +++ b/lib/routes/universities/hust/aia/news.js @@ -0,0 +1,34 @@ +const axios = require('../../../../utils/axios'); +const cheerio = require('cheerio'); +const url = require('url').resolve; + +module.exports = async (ctx) => { + const link = 'http://aia.hust.edu.cn/yxxw.htm'; + const response = await axios.get(link); + const $ = cheerio.load(response.data); + const list = $('.N02_list li dl'); + + ctx.state.data = { + title: '华科人工智能和自动化学院新闻', + link: link, + description: '华科人工智能和自动化学院新闻', + item: + list && + list + .map((index, item) => { + item = $(item); + const day = item.find('.N02_list_Icon i').text(); + item.find('.N02_list_Icon') + .find('i') + .remove(); + const year_month = item.find('.N02_list_Icon').text(); + return { + title: item.find('h4 a').text(), + description: item.find('dd p').text() || '华科人工智能和自动化学院新闻', + pubDate: new Date(year_month + ' ' + day).toUTCString(), + link: url(link, item.find('h4 a').attr('href')), + }; + }) + .get(), + }; +}; diff --git a/lib/routes/universities/hust/aia/notice.js b/lib/routes/universities/hust/aia/notice.js new file mode 100755 index 0000000000..dbdaef71da --- /dev/null +++ b/lib/routes/universities/hust/aia/notice.js @@ -0,0 +1,39 @@ +const axios = require('../../../../utils/axios'); +const cheerio = require('cheerio'); +const url = require('url').resolve; + +const typelist = ['最新', '行政', '人事', '科研', '讲座', '本科生', '研究生', '学工']; + +module.exports = async (ctx) => { + const type = parseInt(ctx.params.type) || 0; + const link = 'http://aia.hust.edu.cn/'; + const response = await axios.get(link); + const $ = cheerio.load(response.data); + const list = $('.m_content .m_con') + .eq(type) + .find('.N02_list_dl'); + + ctx.state.data = { + title: `华科人工智能和自动化学院${typelist[type]}通知`, + link: link, + description: `华科人工智能和自动化学院${typelist[type]}通知`, + item: + list && + list + .map((index, item) => { + item = $(item); + const day = item.find('.N02_list_Icon i').text(); + item.find('.N02_list_Icon') + .find('i') + .remove(); + const year_month = item.find('.N02_list_Icon').text(); + return { + title: item.find('h4 a').text(), + description: item.find('dd p').text() || `华科人工智能和自动化学院${typelist[type]}通知`, + pubDate: new Date(year_month + ' ' + day).toUTCString(), + link: url(link, item.find('h4 a').attr('href')), + }; + }) + .get(), + }; +}; diff --git a/lib/routes/universities/hust/auto/news.js b/lib/routes/universities/hust/auto/news.js old mode 100644 new mode 100755 index b243deaab7..eaeaafa802 --- a/lib/routes/universities/hust/auto/news.js +++ b/lib/routes/universities/hust/auto/news.js @@ -3,15 +3,15 @@ const cheerio = require('cheerio'); const url = require('url').resolve; module.exports = async (ctx) => { - const link = 'http://auto.hust.edu.cn/yxxw.htm'; + const link = 'http://aia.hust.edu.cn/yxxw.htm'; const response = await axios.get(link); const $ = cheerio.load(response.data); const list = $('.N02_list li dl'); ctx.state.data = { - title: '华科自动化学院新闻', + title: '华科人工智能和自动化学院新闻', link: link, - description: '华科自动化学院新闻', + description: '华科人工智能和自动化学院新闻', item: list && list @@ -24,7 +24,7 @@ module.exports = async (ctx) => { const year_month = item.find('.N02_list_Icon').text(); return { title: item.find('h4 a').text(), - description: item.find('dd p').text() || '华科自动化学院新闻', + description: item.find('dd p').text() || '华科人工智能和自动化学院新闻', pubDate: new Date(year_month + ' ' + day).toUTCString(), link: url(link, item.find('h4 a').attr('href')), }; diff --git a/lib/routes/universities/hust/auto/notice.js b/lib/routes/universities/hust/auto/notice.js old mode 100644 new mode 100755 index f6ab93ab83..dbdaef71da --- a/lib/routes/universities/hust/auto/notice.js +++ b/lib/routes/universities/hust/auto/notice.js @@ -6,7 +6,7 @@ const typelist = ['最新', '行政', '人事', '科研', '讲座', '本科生', module.exports = async (ctx) => { const type = parseInt(ctx.params.type) || 0; - const link = 'http://auto.hust.edu.cn/'; + const link = 'http://aia.hust.edu.cn/'; const response = await axios.get(link); const $ = cheerio.load(response.data); const list = $('.m_content .m_con') @@ -14,9 +14,9 @@ module.exports = async (ctx) => { .find('.N02_list_dl'); ctx.state.data = { - title: `华科自动化学院${typelist[type]}通知`, + title: `华科人工智能和自动化学院${typelist[type]}通知`, link: link, - description: `华科自动化学院${typelist[type]}通知`, + description: `华科人工智能和自动化学院${typelist[type]}通知`, item: list && list @@ -29,7 +29,7 @@ module.exports = async (ctx) => { const year_month = item.find('.N02_list_Icon').text(); return { title: item.find('h4 a').text(), - description: item.find('dd p').text() || `华科自动化学院${typelist[type]}通知`, + description: item.find('dd p').text() || `华科人工智能和自动化学院${typelist[type]}通知`, pubDate: new Date(year_month + ' ' + day).toUTCString(), link: url(link, item.find('h4 a').attr('href')), };