feat: add route for nikkei (#3785)

This commit is contained in:
Jiayue. Zhang
2020-01-31 16:56:13 +08:00
committed by GitHub
parent 46431a3e7d
commit c862aef975
4 changed files with 57 additions and 0 deletions
+3
View File
@@ -2160,4 +2160,7 @@ router.get('/coronavirus/dxy', require('./routes/coronavirus/dxy'));
router.get('/coronavirus/scmp', require('./routes/coronavirus/scmp'));
router.get('/coronavirus/nhc', require('./routes/coronavirus/nhc'));
// 日本経済新聞
router.get('/nikkei/index', require('./routes/nikkei/index'));
module.exports = router;
+34
View File
@@ -0,0 +1,34 @@
const got = require('@/utils/got');
const cheerio = require('cheerio');
module.exports = async (ctx) => {
const url = 'https://www.nikkei.com';
const response = await got({ method: 'get', url });
const $ = cheerio.load(response.data);
const list = $('div[data-rn-track-category]')
.map((_, e) => {
const element = $(e);
const title = element.data('rn-track-value').title;
const link = url + element.find('a').attr('href');
const src = element.find('img').attr('src');
const dataSrc = element.find('img').attr('data-src');
const imgSrc = dataSrc ? dataSrc : src;
const desc = `<img src="${imgSrc}" />` + element.find('div .k-card__excerpt');
return {
title: title,
description: desc,
link: link,
};
})
.get();
ctx.state.data = {
title: '日本経済新聞',
link: url,
item: list,
};
};