diff --git a/docs/other.md b/docs/other.md index e6e02250f..320a59b56 100644 --- a/docs/other.md +++ b/docs/other.md @@ -559,6 +559,12 @@ type 为 all 时,category 参数不支持 cost 和 free +## 上海证券交易所 + +### 上市公司信息最新公告披露 + + + ## 上证债券信息网 ### 可转换公司债券公告 diff --git a/lib/router.js b/lib/router.js index 8a90b1bb6..3e42c24a3 100644 --- a/lib/router.js +++ b/lib/router.js @@ -2022,6 +2022,9 @@ router.get('/sse/convert/:query?', require('./routes/sse/convert')); router.get('/sse/renewal', require('./routes/sse/renewal')); router.get('/sse/inquire', require('./routes/sse/inquire')); +// 上海证券交易所 +router.get('/sse/disclosure/:query?', require('./routes/sse/disclosure')); + // 深圳证券交易所 router.get('/szse/notice', require('./routes/szse/notice')); router.get('/szse/inquire/:type', require('./routes/szse/inquire')); diff --git a/lib/routes/sse/disclosure.js b/lib/routes/sse/disclosure.js new file mode 100644 index 000000000..b5816f656 --- /dev/null +++ b/lib/routes/sse/disclosure.js @@ -0,0 +1,34 @@ +const got = require('@/utils/got'); + +module.exports = async (ctx) => { + const query = ctx.params.query || ''; // beginDate=2018-08-18&endDate=2020-09-01&productId=600696 + const pageUrl = 'http://www.sse.com.cn/disclosure/listedinfo/announcement/'; + const host = `http://www.sse.com.cn`; + + const response = await got({ + method: 'get', + url: `http://query.sse.com.cn/security/stock/queryCompanyBulletin.do?isPagination=true&keyWord=&securityType=0101%2C120100%2C020100%2C020200%2C120200&reportType2=&reportType=ALL&pageHelp.pageSize=25&pageHelp.pageCount=50&pageHelp.pageNo=1&pageHelp.beginPage=1&pageHelp.cacheSize=1&pageHelp.endPage=5&_=1598437657897&${query.replace( + /([\u4e00-\u9fa5])/g, + (str) => encodeURIComponent(str) + )}`, + headers: { + Referer: 'http://www.sse.com.cn/disclosure/listedinfo/announcement/', + }, + }); + + const items = response.data.result.map((item) => { + const single = { + title: item.TITLE, + description: `${host}${item.URL}`, + pubDate: new Date(item.SSEDate).toUTCString(), + link: `${host}${item.URL}`, + }; + return single; + }); + + ctx.state.data = { + title: '上海证券交易所 - 上市公司信息 - 最新公告', + link: pageUrl, + item: items, + }; +};