From 7bc34d27decc25eb33672e77f4a2d147ff2f4c5a Mon Sep 17 00:00:00 2001 From: MisteryMonster <40703811+MisteryMonster@users.noreply.github.com> Date: Fri, 22 May 2020 16:20:55 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=B1=86=E7=93=A3=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E7=9A=84=E5=B9=BF=E6=92=AD=E9=9B=B7=E8=BE=BE=E6=94=AF=E6=8C=81?= =?UTF-8?q?=EF=BC=8C=E5=BE=AE=E8=B0=83=E5=86=85=E5=AE=B9=E8=BE=93=E5=87=BA?= =?UTF-8?q?=20(#4764)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/radar-rules.js | 14 ++++++++++++++ docs/social-media.md | 2 +- lib/routes/douban/people/status.js | 13 +++++++------ 3 files changed, 22 insertions(+), 7 deletions(-) diff --git a/assets/radar-rules.js b/assets/radar-rules.js index 3c8a95ff7..d3cc62791 100644 --- a/assets/radar-rules.js +++ b/assets/radar-rules.js @@ -1998,4 +1998,18 @@ }, ], }, + 'douban.com': { + _name: '豆瓣', + www: [ + { + title: '用户的广播', + docs: 'https://docs.rsshub.app/social-media.html#dou-ban', + source: '/people/:user/', + target: (params, url, document) => { + const uid = document && document.querySelector('html').innerHTML.match(/"id":"([0-9]+)"/)[1]; + return uid ? `/douban/people/${uid}/status` : ''; + }, + }, + ], + }, }); diff --git a/docs/social-media.md b/docs/social-media.md index f046dd0af..664486aff 100644 --- a/docs/social-media.md +++ b/docs/social-media.md @@ -594,7 +594,7 @@ Tiny Tiny RSS 会给所有 iframe 元素添加 `sandbox="allow-scripts"` 属性 ### 用户广播 - + ::: tip 提示 diff --git a/lib/routes/douban/people/status.js b/lib/routes/douban/people/status.js index 99c0443b8..f65ee3aac 100644 --- a/lib/routes/douban/people/status.js +++ b/lib/routes/douban/people/status.js @@ -6,13 +6,13 @@ function getContentByActivity(status) { switch (status.activity) { case '说': title = `${status.author.name} ${status.activity}:${status.text}`; - description = status.text; + description = `${status.author.name} ${status.activity}:${status.text}`; status.images.forEach((image) => { - description += `

`; + description += `

`; }); break; case '转发': - description = `${status.text}
`; + description = `${status.text ? `${status.author.name} : ${status.text}

` : ''}`; if (status.reshared_status.deleted) { title = `${status.author.name} ${status.activity} 广播:原动态已被发布者删除`; description += `原动态已被发布者删除`; @@ -20,7 +20,7 @@ function getContentByActivity(status) { description += getContentByActivity(status.reshared_status).title; title = `${status.author.name} ${status.activity} ${status.reshared_status.author.name} 的广播:${status.reshared_status.text}`; status.reshared_status.images.forEach((image) => { - description += `

`; + description += `

`; }); } @@ -28,14 +28,15 @@ function getContentByActivity(status) { default: if (status.card) { let image; + description = `${status.author.name} ${status.activity} : ${status.text ? `${status.text}

` : '

'}`; if (status.card.image && (status.card.image.large || status.card.image.normal)) { image = (status.card.image.large || status.card.image.normal).url; } if (status.card.rating) { - description = `${status.text ? `${status.author.name}的评分:${status.text}
` : ''}豆瓣评分:${status.card.rating}
${status.card.subtitle}${image ? `
` : ''}`; + description += `《${status.card.title}》
豆瓣评分:${status.card.rating}
${status.card.subtitle}${image ? `
` : ''}`; title = `${status.author.name}${status.activity}:《${status.card.title}》`; } else { - description = `${status.card.title}
${status.card.subtitle}${image ? `
` : ''}`; + description += `${status.card.url ? `${status.card.title}` : status.card.title}
${status.card.subtitle}${image ? `
` : ''}`; title = `${status.author.name} ${status.activity}:「${status.card.title}」${status.text}`; } }