mirror of
https://github.com/Jerryplusy/rc-plugin.git
synced 2025-10-14 16:19:18 +00:00
🐞 fix: 修复dy解析-patch2(#I6QDGD)
This commit is contained in:
parent
2acdb0e631
commit
2c71b95da4
@ -155,14 +155,18 @@ export class tools extends plugin {
|
|||||||
// const url = `https://www.iesdouyin.com/aweme/v1/web/aweme/detail/?aweme_id=${ douId }&aid=1128&version_name=23.5.0&device_platform=android&os_version=2333`;
|
// const url = `https://www.iesdouyin.com/aweme/v1/web/aweme/detail/?aweme_id=${ douId }&aid=1128&version_name=23.5.0&device_platform=android&os_version=2333`;
|
||||||
// 感谢 Evil0ctal(https://github.com/Evil0ctal)提供的header 和 B1gM8c(https://github.com/B1gM8c)的逆向算法X-Bogus
|
// 感谢 Evil0ctal(https://github.com/Evil0ctal)提供的header 和 B1gM8c(https://github.com/B1gM8c)的逆向算法X-Bogus
|
||||||
const headers = {
|
const headers = {
|
||||||
'accept-encoding': 'gzip, deflate, br',
|
"accept-encoding": "gzip, deflate, br",
|
||||||
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36',
|
"User-Agent":
|
||||||
'referer': 'https://www.douyin.com/',
|
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36",
|
||||||
'cookie': "s_v_web_id=verify_leytkxgn_kvO5kOmO_SdMs_4t1o_B5ml_BUqtWM1mP6BF;"
|
referer: "https://www.douyin.com/",
|
||||||
|
cookie: "s_v_web_id=verify_leytkxgn_kvO5kOmO_SdMs_4t1o_B5ml_BUqtWM1mP6BF;",
|
||||||
};
|
};
|
||||||
const dyApi = `https://www.douyin.com/aweme/v1/web/aweme/detail/?device_platform=webapp&aid=6383&channel=channel_pc_web&aweme_id=${douId}&pc_client_type=1&version_code=190500&version_name=19.5.0&cookie_enabled=true&screen_width=1344&screen_height=756&browser_language=zh-CN&browser_platform=Win32&browser_name=Firefox&browser_version=110.0&browser_online=true&engine_name=Gecko&engine_version=109.0&os_name=Windows&os_version=10&cpu_core_num=16&device_memory=&platform=PC&webid=7158288523463362079&msToken=abL8SeUTPa9-EToD8qfC7toScSADxpg6yLh2dbNcpWHzE0bT04txM_4UwquIcRvkRb9IU8sifwgM1Kwf1Lsld81o9Irt2_yNyUbbQPSUO8EfVlZJ_78FckDFnwVBVUVK`
|
const dyApi = `https://www.douyin.com/aweme/v1/web/aweme/detail/?device_platform=webapp&aid=6383&channel=channel_pc_web&aweme_id=${douId}&pc_client_type=1&version_code=190500&version_name=19.5.0&cookie_enabled=true&screen_width=1344&screen_height=756&browser_language=zh-CN&browser_platform=Win32&browser_name=Firefox&browser_version=110.0&browser_online=true&engine_name=Gecko&engine_version=109.0&os_name=Windows&os_version=10&cpu_core_num=16&device_memory=&platform=PC&webid=7158288523463362079&msToken=abL8SeUTPa9-EToD8qfC7toScSADxpg6yLh2dbNcpWHzE0bT04txM_4UwquIcRvkRb9IU8sifwgM1Kwf1Lsld81o9Irt2_yNyUbbQPSUO8EfVlZJ_78FckDFnwVBVUVK`;
|
||||||
// xg参数
|
// xg参数
|
||||||
const xbParam = xBogus.sign(new URLSearchParams(new URL(dyApi).search).toString(), headers["User-Agent"]);
|
const xbParam = xBogus.sign(
|
||||||
|
new URLSearchParams(new URL(dyApi).search).toString(),
|
||||||
|
headers["User-Agent"],
|
||||||
|
);
|
||||||
// const param = resp.data.result[0].paramsencode;
|
// const param = resp.data.result[0].paramsencode;
|
||||||
const resDyApi = `${dyApi}&X-Bogus=${xbParam}`;
|
const resDyApi = `${dyApi}&X-Bogus=${xbParam}`;
|
||||||
axios
|
axios
|
||||||
@ -179,23 +183,16 @@ export class tools extends plugin {
|
|||||||
const urlTypeCode = item.aweme_type;
|
const urlTypeCode = item.aweme_type;
|
||||||
const urlType = douyinTypeMap[urlTypeCode];
|
const urlType = douyinTypeMap[urlTypeCode];
|
||||||
if (urlType === "video") {
|
if (urlType === "video") {
|
||||||
const resUrl = item.video.play_addr_h264.url_list[0]
|
const resUrl = item.video.play_addr_h264.url_list[0].replace(
|
||||||
const path = `${this.defaultPath}${this.e.group_id || this.e.user_id}/temp.mp4`
|
"http",
|
||||||
axios({
|
"https",
|
||||||
resUrl,
|
);
|
||||||
method: "GET",
|
const path = `${this.defaultPath}${
|
||||||
responseType: "stream",
|
this.e.group_id || this.e.user_id
|
||||||
proxy: false
|
}/temp.mp4`;
|
||||||
})
|
await this.downloadVideo(resUrl).then(() => {
|
||||||
.then((response) => {
|
e.reply(segment.video(path));
|
||||||
const writer = fs.createWriteStream(path);
|
});
|
||||||
response.data.pipe(writer);
|
|
||||||
})
|
|
||||||
.then(res => {
|
|
||||||
e.reply(segment.video(
|
|
||||||
path
|
|
||||||
))
|
|
||||||
})
|
|
||||||
} else if (urlType === "image") {
|
} else if (urlType === "image") {
|
||||||
// 无水印图片列表
|
// 无水印图片列表
|
||||||
let no_watermark_image_list = [];
|
let no_watermark_image_list = [];
|
||||||
@ -344,9 +341,9 @@ export class tools extends plugin {
|
|||||||
};
|
};
|
||||||
// 格式化数据
|
// 格式化数据
|
||||||
const combineContent =
|
const combineContent =
|
||||||
`\n点赞:${dataProcessing(like)} | 硬币:${dataProcessing(coin)} | 收藏:${dataProcessing(
|
`\n点赞:${dataProcessing(like)} | 硬币:${dataProcessing(
|
||||||
favorite,
|
coin,
|
||||||
)} | 分享:${dataProcessing(share)}\n` +
|
)} | 收藏:${dataProcessing(favorite)} | 分享:${dataProcessing(share)}\n` +
|
||||||
`总播放量:${dataProcessing(view)} | 弹幕数量:${dataProcessing(
|
`总播放量:${dataProcessing(view)} | 弹幕数量:${dataProcessing(
|
||||||
danmaku,
|
danmaku,
|
||||||
)} | 评论:${dataProcessing(reply)}\n` +
|
)} | 评论:${dataProcessing(reply)}\n` +
|
||||||
@ -357,7 +354,7 @@ export class tools extends plugin {
|
|||||||
.then(data => {
|
.then(data => {
|
||||||
this.downBili(`${path}temp`, data.videoUrl, data.audioUrl)
|
this.downBili(`${path}temp`, data.videoUrl, data.audioUrl)
|
||||||
.then(_ => {
|
.then(_ => {
|
||||||
e.reply(segment.video(`${path}temp.mp4`));
|
e.reply(segment.video(`${path}temp.mp4`));
|
||||||
})
|
})
|
||||||
.catch(err => {
|
.catch(err => {
|
||||||
logger.error(err);
|
logger.error(err);
|
||||||
@ -900,7 +897,7 @@ export class tools extends plugin {
|
|||||||
// }
|
// }
|
||||||
});
|
});
|
||||||
if (imgPromise.length > 0) {
|
if (imgPromise.length > 0) {
|
||||||
let path = []
|
let path = [];
|
||||||
const images = await Promise.all(imgPromise).then(paths => {
|
const images = await Promise.all(imgPromise).then(paths => {
|
||||||
return paths.map(item => {
|
return paths.map(item => {
|
||||||
path.push(item);
|
path.push(item);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user