From 65c6532ccce6be86cda8ef84ec2649df0f166e74 Mon Sep 17 00:00:00 2001 From: Ray Wong Date: Wed, 26 Sep 2018 00:16:19 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=8D=8E=E4=B8=AD=E7=A7=91?= =?UTF-8?q?=E6=8A=80=E5=A4=A7=E5=AD=A6=E8=87=AA=E5=8A=A8=E5=8C=96=E5=AD=A6?= =?UTF-8?q?=E9=99=A2=E9=80=9A=E7=9F=A5=E5=92=8C=E6=96=B0=E9=97=BB=20(#793)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/README.md | 12 ++++++++ router.js | 4 +++ routes/universities/hust/auto/news.js | 34 +++++++++++++++++++++ routes/universities/hust/auto/notice.js | 39 +++++++++++++++++++++++++ 4 files changed, 89 insertions(+) create mode 100644 routes/universities/hust/auto/news.js create mode 100644 routes/universities/hust/auto/notice.js diff --git a/docs/README.md b/docs/README.md index 42cf28421c..6bdbb0be08 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1159,6 +1159,18 @@ category 列表: +### 华中科技大学 + + + +| 最新 | 行政 | 人事 | 科研 | 讲座 | 本科生 | 研究生 | 学工 | +| ---- | ---- | ---- | ---- | ---- | ------ | ------ | ---- | +| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | + + + + + ## 传统媒体 ### 央视新闻 diff --git a/router.js b/router.js index b330ae6601..4da4bf24e6 100644 --- a/router.js +++ b/router.js @@ -544,6 +544,10 @@ router.get('/kmust/jwc/:type?', require('./routes/universities/kmust/jwc')); router.get('/kmust/job/careers/:type?', require('./routes/universities/kmust/job/careers')); router.get('/kmust/job/jobfairs', require('./routes/universities/kmust/job/jobfairs')); +// 华中科技大学 +router.get('/hust/auto/notice/:type?', require('./routes/universities/hust/auto/notice')); +router.get('/hust/auto/news/', require('./routes/universities/hust/auto/news')); + // ifanr router.get('/ifanr/appso', require('./routes/ifanr/appso')); diff --git a/routes/universities/hust/auto/news.js b/routes/universities/hust/auto/news.js new file mode 100644 index 0000000000..b243deaab7 --- /dev/null +++ b/routes/universities/hust/auto/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://auto.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/routes/universities/hust/auto/notice.js b/routes/universities/hust/auto/notice.js new file mode 100644 index 0000000000..f6ab93ab83 --- /dev/null +++ b/routes/universities/hust/auto/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://auto.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(), + }; +};