From def39c915a3a9a2d2a0ce8daa34be1f653ca7e38 Mon Sep 17 00:00:00 2001 From: Ethan Shen Date: Sun, 6 Sep 2020 04:00:07 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=89=8D=E5=BA=9C=E7=A4=BE=E5=8C=BA?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=8A=A8=E6=80=81=E9=93=BE=E6=8E=A5=20(#5607?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: codefactor-io --- lib/routes/91ddcc/user.js | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/lib/routes/91ddcc/user.js b/lib/routes/91ddcc/user.js index 097b85cda..0b31b427c 100644 --- a/lib/routes/91ddcc/user.js +++ b/lib/routes/91ddcc/user.js @@ -7,17 +7,32 @@ module.exports = async (ctx) => { method: 'get', url: currentUrl, }); + const $ = cheerio.load(response.data); const list = $('div.dynamic-single') .slice(0, 10) .map((_, item) => { item = $(item); + const word = item.find('div.word'); + const detailTitle = item.find('p.detail-title').text(); + + let link = currentUrl; + let title = detailTitle || word.html(); + + if (word.attr('onclick')) { + link = `https://sns.91ddcc.com${word.attr('onclick').split("'")[1]}`; + } else { + title = item.find('div.fl').text().trim(); + } + + item.find('p.detail-title').remove(); + return { - title: item.find('div.detail-time').text(), - link: `https://sns.91ddcc.com/${item.attr('id').split('-')[1]}`, - description: word.html(), - pubDate: new Date(item.find('div.detail-time').text() + ' GMT+8').toUTCString(), + title: title, + link: link, + description: item.find('div.dynamic-content').html(), + pubDate: new Date(item.attr('add-time') * 1000).toUTCString(), }; }) .get();