Files
RSSHub/lib/routes/luogu/contest.js

29 lines
850 B
JavaScript

const got = require('@/utils/got');
const cheerio = require('cheerio');
const resolve_url = require('url').resolve;
module.exports = async (ctx) => {
const link = 'https://www.luogu.com.cn/';
const response = await got.get(link);
const $ = cheerio.load(response.data);
const title = '洛谷近期比赛';
const out = $('.am-panel-hd ')
.slice(0, 10)
.map(function () {
const info = {
title: $(this).find('a').text() || $(this).text(),
description: $(this).html() + $(this).parent().find('.am-panel-bd').html(),
link: resolve_url('https://www.luogu.com.cn', $(this).find('a').attr('href')),
};
return info;
})
.get();
ctx.state.data = {
title: title,
link: link,
item: out,
};
};