fix: 修复b站动态中转发直播间动态出现undefined;补充b站动态中转发专题页的内容和图片 (#4642)

This commit is contained in:
CaoMeiYouRen 2020-05-02 13:10:58 +08:00 committed by GitHub
parent 0e4485576b
commit 98a7297eab
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 28 additions and 21 deletions

View File

@ -27,21 +27,29 @@ module.exports = async (ctx) => {
// img
let imgHTML = '';
if (data.pictures) {
for (let i = 0; i < data.pictures.length; i++) {
imgHTML += `<img src="${data.pictures[i].img_src}">`;
const getImgs = (data) => {
let imgs = '';
if (data.pictures) {
for (let i = 0; i < data.pictures.length; i++) {
imgs += `<img src="${data.pictures[i].img_src}">`;
}
}
}
if (data.pic) {
imgHTML += `<img src="${data.pic}">`;
}
if (origin && origin.item && origin.item.pictures) {
for (let i = 0; i < origin.item.pictures.length; i++) {
imgHTML += `<img src="${origin.item.pictures[i].img_src}">`;
if (data.pic) {
imgs += `<img src="${data.pic}">`;
}
}
if (origin && origin.pic) {
imgHTML += `<img src="${origin.pic}">`;
if (data.cover) {
imgs += `<img src="${data.cover}">`;
}
if (data.sketch && data.sketch.cover_url) {
imgs += `<img src="${data.sketch.cover_url}">`;
}
return imgs;
};
imgHTML += getImgs(data);
if (origin) {
imgHTML += getImgs(origin.item || origin);
}
// link
let link = '';
@ -51,17 +59,16 @@ module.exports = async (ctx) => {
link = `https://t.bilibili.com/${item.desc.dynamic_id}`;
}
const getTitle = (data) => data.title || data.description || data.content || (data.vest && data.vest.content) || '';
const getDes = (data) => data.desc || data.description || data.content || data.summary || (data.vest && data.vest.content) + (data.sketch && data.sketch.title) || data.intro || '';
const getOriginDes = (data) =>
(data && data.author && data.author.name && `转发自: @${data.author.name}: `) + (data && data.title) + (data && data.image_urls && data.image_urls.length > 0 && `<br><img src="${data.image_urls[0]}">`) ||
(data && data.apiSeasonInfo && data.apiSeasonInfo.title && `转发自: ${data.apiSeasonInfo.title}`) + (data && data.cover && `<br><img src="${data.cover}">`) ||
'';
const getOriginName = (data) => (data.user && (data.user.uname || data.user.name)) || (data.owner && data.owner.name) || '';
const getDes = (data) => data.desc || data.description || data.content || data.summary || (data.vest && data.vest.content) + (data.sketch && `<br>${data.sketch.title}<br>${data.sketch.desc_text}`) || data.intro || '';
const getOriginDes = (data) => (data && data.apiSeasonInfo && data.apiSeasonInfo.title && `//转发自: ${data.apiSeasonInfo.title}`) || '';
const getOriginName = (data) => data.uname || (data.author && data.author.name) || (data.user && (data.user.uname || data.user.name)) || (data.owner && data.owner.name) || '';
const getOriginTitle = (data) => (data.title ? `${data.title}<br>` : '');
const getIframe = (data) => (!disableEmbed && data && data.aid ? `<br><br>${utils.iframe(data.aid)}<br>` : '');
return {
title: getTitle(data),
description: `${getDes(data)}${
origin && (origin.user || origin.owner) ? `<br><br>转发自: @${getOriginName(origin)}: ${origin.title ? `${origin.title}<br>` : ''}${getDes(origin.item || origin)}` : `${getOriginDes(origin)}`
}${!disableEmbed && data.aid ? `<br><br>${utils.iframe(data.aid)}<br>` : ''}${!disableEmbed && origin && origin.aid ? `<br><br>${utils.iframe(origin.aid)}<br>` : ''}<br>${imgHTML} `,
origin && getOriginName(origin) ? `<br><br>//转发自: @${getOriginName(origin)}: ${getOriginTitle(origin.item || origin)}${getDes(origin.item || origin)}` : `${getOriginDes(origin)}`
}${getIframe(data)}${getIframe(origin)}${imgHTML ? `<br>${imgHTML}` : ''}`,
pubDate: new Date(item.desc.timestamp * 1000).toUTCString(),
link: link,
};