diff --git a/apps/tools.js b/apps/tools.js index b3147b4..f8a1090 100644 --- a/apps/tools.js +++ b/apps/tools.js @@ -8,14 +8,14 @@ import _ from "lodash"; import tunnel from "tunnel"; import HttpProxyAgent from "https-proxy-agent"; import { mkdirsSync } from "../utils/file.js"; -import { downloadBFile, getDownloadUrl, mergeFileToMp4, getDynamic } from "../utils/bilibili.js"; +import { downloadBFile, getDownloadUrl, mergeFileToMp4 } from "../utils/bilibili.js"; import { parseUrl, parseM3u8, downloadM3u8Videos, mergeAcFileToMp4 } from "../utils/acfun.js"; import { transMap, douyinTypeMap, XHS_CK, TEN_THOUSAND } from "../utils/constant.js"; -import { getIdVideo, generateRandomStr } from "../utils/common.js"; +import { getIdVideo } from "../utils/common.js"; import config from "../model/index.js"; import Translate from "../utils/trans-strategy.js"; import * as xBogus from "../utils/x-bogus.cjs"; -import { getVideoInfo } from "../utils/biliInfo.js"; +import { getVideoInfo, getDynamic } from "../utils/biliInfo.js"; import { getBiliGptInputText } from "../utils/biliSummary.js"; import { getBodianAudio, getBodianMv, getBodianMusicInfo } from "../utils/bodian.js"; import { ChatGPTClient } from "@waylaidwanderer/chatgpt-api"; diff --git a/utils/biliInfo.js b/utils/biliInfo.js index c102db6..b898f3a 100644 --- a/utils/biliInfo.js +++ b/utils/biliInfo.js @@ -1,4 +1,5 @@ import fetch from "node-fetch"; +import axios from "axios"; async function getVideoInfo(url) { const baseVideoInfo = "http://api.bilibili.com/x/web-interface/view"; @@ -20,4 +21,32 @@ async function getVideoInfo(url) { }); } -export { getVideoInfo }; +async function getDynamic(dynamicId) { + const dynamicApi = `https://api.vc.bilibili.com/dynamic_svr/v1/dynamic_svr/get_dynamic_detail?dynamic_id=${dynamicId}` + return axios.get(dynamicApi, { + headers: { + 'User-Agent': + 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36', + 'referer': 'https://www.bilibili.com', + } + }).then(resp => { + const dynamicData = resp.data.data.card + const card = JSON.parse(dynamicData.card) + const dynamicOrigin = card.item + const dynamicDesc = dynamicOrigin.description + + const pictures = dynamicOrigin.pictures + let dynamicSrc = [] + for (let pic of pictures) { + const img_src = pic.img_src + dynamicSrc.push(img_src) + } + // console.log(dynamic_src) + return { + dynamicSrc, + dynamicDesc + } + }) +} + +export { getVideoInfo, getDynamic }; diff --git a/utils/bilibili.js b/utils/bilibili.js index 86dcb52..0e2bcde 100644 --- a/utils/bilibili.js +++ b/utils/bilibili.js @@ -95,32 +95,4 @@ async function mergeFileToMp4 (vFullFileName, aFullFileName, outputFileName, sho } } -async function getDynamic(dynamicId) { - const dynamicApi = `https://api.vc.bilibili.com/dynamic_svr/v1/dynamic_svr/get_dynamic_detail?dynamic_id=${dynamicId}` - return axios.get(dynamicApi, { - headers: { - 'User-Agent': - 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36', - 'referer': 'https://www.bilibili.com', - } - }).then(resp => { - const dynamicData = resp.data.data.card - const card = JSON.parse(dynamicData.card) - const dynamicOrigin = card.item - const dynamicDesc = dynamicOrigin.description - - const pictures = dynamicOrigin.pictures - let dynamicSrc = [] - for (let pic of pictures) { - const img_src = pic.img_src - dynamicSrc.push(img_src) - } - // console.log(dynamic_src) - return { - dynamicSrc, - dynamicDesc - } - }) -} - -export { downloadBFile, getDownloadUrl, mergeFileToMp4, getDynamic } +export { downloadBFile, getDownloadUrl, mergeFileToMp4 }