diff --git a/lib/routes/sspai/series.js b/lib/routes/sspai/series.js index 5c5ddeb16..785a38c6c 100644 --- a/lib/routes/sspai/series.js +++ b/lib/routes/sspai/series.js @@ -1,14 +1,17 @@ const got = require('@/utils/got'); +const { JSDOM } = require('jsdom'); module.exports = async (ctx) => { const response = await got({ method: 'get', - url: `https://sspai.com/api/v1/series/page/get?limit=5&sort=weight&offset=0&released_at=0`, - headers: { - Host: 'sspai.com', - }, + url: 'https://sspai.com/series', }); - const data = response.data.data; + + const dom = new JSDOM(response.data, { + runScripts: 'dangerously', + }); + + const data = dom.window.__INITIAL_STATE__.seriesHomeModule.seriesSearchpage; ctx.state.data = { title: '少数派 -- 最新上架付费专栏', @@ -16,9 +19,10 @@ module.exports = async (ctx) => { description: '少数派 -- 最新上架付费专栏', item: data.map((item) => ({ title: item.title, - description: item.summary, + description: `
${item.description}`, link: `https://sspai.com/series/${item.id}`, - author: item.nickname, + author: item.author.nickname, + pubDate: new Date(item.released_at * 1000), })), }; };