fix /rsshub/rss for new docs

This commit is contained in:
DIYgod
2019-03-25 19:11:44 +08:00
parent b7008fd948
commit b685ab1b4f

View File

@@ -2,28 +2,36 @@ const axios = require('../../utils/axios');
const cheerio = require('cheerio');
module.exports = async (ctx) => {
const response = await axios({
method: 'get',
url: 'https://docs.rsshub.app',
const types = ['social-media', 'programming', 'live', 'multimedia', 'picture', 'anime', 'program-update', 'university', 'traditional-media', 'forecast', 'travel', 'shopping', 'game', 'reading', 'government', 'other'];
const all = await Promise.all(
types.map(async (type) => {
const response = await axios({
method: 'get',
url: `https://docs.rsshub.app/${type}.html`,
});
const data = response.data;
const $ = cheerio.load(data);
const item = $('.routeBlock').get();
return Promise.resolve(item);
})
);
let list = [];
all.forEach((item) => {
list = list.concat(item);
});
const data = response.data;
const $ = cheerio.load(data);
const list = $('.routeBlock')
.get()
.reverse();
ctx.state.data = {
title: 'RSSHub 有新路由啦',
link: 'https://docs.rsshub.app',
description: '万物皆可 RSS',
item:
list &&
list.map((item) => {
item = $(item);
list.reverse().map((item) => {
item = cheerio(item);
item.find('.header-anchor').remove();
const titleEle = item.prevAll('h3').eq(0);
const titleEle = item.prevAll('h2').eq(0);
return {
title: `${titleEle[0].attribs.id} - ${item
.find('.name')