rsshub
Version:
Make RSS Great Again!
37 lines (36 loc) • 1.3 kB
JavaScript
import { t as cache_default$1 } from "./cache-C1Y-9qDV.mjs";
import { t as got_default } from "./got-DUpa1V3-.mjs";
import { n as parseScriptData } from "./parse-script-data-DunIeu2B.mjs";
import { load } from "cheerio";
//#region lib/routes/qq/kg/cache.ts
var cache_default = { getPlayInfo: async (ctx, shareId, ksong_mid = "") => {
const link = `https://node.kg.qq.com/play?s=${shareId}`;
const cache_key = ksong_mid ? `ksong:${ksong_mid}` : link;
return await cache_default$1.tryGet(cache_key, async () => {
const response = await got_default(link);
const $ = load(response.data);
const script = $("script").toArray().map((element) => $(element).text()).filter((source) => source.includes("__DATA__")).join("\n");
const data = parseScriptData(script, "window.__DATA__");
const name = data.detail.song_name;
const description = data.detail.content;
const author = data.detail.nick;
const itunes_item_image = data.detail.cover;
const enclosure_url = data.detail.playurl;
ksong_mid ??= data.detail.ksong_mid;
const ctime = data.detail.ctime;
const comments = data.detail.comments;
return {
name,
link,
description,
author,
enclosure_url,
ksong_mid,
ctime,
itunes_item_image,
comments
};
});
} };
//#endregion
export { cache_default as t };