feat: add 看点快报 (#5185)

This commit is contained in:
Ethan Shen 2020-07-29 02:23:04 +08:00 committed by GitHub
parent fc67642ac3
commit d84e7a2a5b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 43 additions and 0 deletions

View File

@ -706,6 +706,12 @@ area 分区选项
<Route author="WenryXu" example="/juesheng" path="/juesheng"/>
## 看点快报
### 首页
<Route author="nczitzk" example="/kuaibao" path="/kuaibao/index"/>
## 快科技(原驱动之家)
### 最新新闻

View File

@ -2968,6 +2968,9 @@ router.get('/12379', require('./routes/12379/index'));
router.get('/ngbj/today', require('./routes/niaogebiji/today'));
router.get('/ngbj/cat/:cat', require('./routes/niaogebiji/cat'));
// 看点快报
router.get('/kuaibao', require('./routes/kuaibao/index'));
// SocialBeta
router.get('/socialbeta/home', require('./routes/socialbeta/home'));
router.get('/socialbeta/hunt', require('./routes/socialbeta/hunt'));

View File

@ -0,0 +1,34 @@
const got = require('@/utils/got');
module.exports = async (ctx) => {
const currentUrl = 'http://kuaibao.qq.com/n/getKbMainpageInfo';
const response = await got({
method: 'get',
url: currentUrl,
});
const articleList = response.data.newslist.map((item) => ({
title: item.title,
link: `https://kuaibao.qq.com/getSubNewsContent?id=${item.id}&style=json`,
pubDate: new Date(item.time).toUTCString(),
}));
ctx.state.data = {
title: '看点快报 - 首页',
link: 'http://kuaibao.qq.com/',
item: await Promise.all(
articleList.map(
async (item) =>
await ctx.cache.tryGet(item.link, async () => {
const contentResponse = await got({
method: 'get',
url: item.link,
});
item.link = contentResponse.data.url || contentResponse.data.short_url;
item.description = contentResponse.data.content.text;
return item;
})
)
),
};
};