UNPKG

rsshub

Version:
62 lines (60 loc) 2.02 kB
import "./esm-shims-CzJ_djXG.mjs"; import "./config-C37vj7VH.mjs"; import "./dist-BInvbO1W.mjs"; import "./logger-Czu8UMNd.mjs"; import "./ofetch-BIyrKU3Y.mjs"; import "./helpers-DxBp0Pty.mjs"; import "./got-KxxWdaxq.mjs"; import { t as invalid_parameter_default } from "./invalid-parameter-rr4AgGpp.mjs"; import { n as genSize, t as doGot } from "./util-Duh7o5Ja.mjs"; //#region lib/routes/bt0/mv.ts const route = { path: "/mv/:number/:domain?", categories: ["multimedia"], example: "/bt0/mv/35575567/2", parameters: { number: "影视详情id, 网页路径为`/mv/{id}.html`其中的id部分, 一般为8位纯数字", domain: "数字1-9, 比如1表示请求域名为 1bt0.com, 默认为 2" }, features: { requireConfig: false, requirePuppeteer: false, antiCrawler: false, supportBT: true, supportPodcast: false, supportScihub: false }, radar: [{ source: ["2bt0.com/mv/"] }], name: "影视资源下载列表", maintainers: ["miemieYaho"], handler }; async function handler(ctx) { const domain = ctx.req.param("domain") ?? "2"; const number = ctx.req.param("number"); if (!/^[1-9]$/.test(domain)) throw new invalid_parameter_default("Invalid domain"); if (!/^\d{6,}$/.test(number)) throw new invalid_parameter_default("Invalid number"); const host = `https://www.${domain}bt0.com`; const data = (await doGot(0, host, `${host}/prod/core/system/getVideoDetail/${number}`)).data; const items = Object.values(data.ecca).flatMap((item) => item.map((i) => ({ title: i.zname, guid: i.zname, description: `${i.zname}[${i.zsize}]`, link: `${host}/tr/${i.id}.html`, pubDate: i.ezt, enclosure_type: "application/x-bittorrent", enclosure_url: i.zlink, enclosure_length: genSize(i.zsize), category: strsJoin(i.zqxd, i.text_html, i.audio_html, i.new === 1 ? "新" : "") }))); return { title: data.title, link: `${host}/mv/${number}.html`, item: items }; } function strsJoin(...strings) { return strings.filter((str) => str !== "").join(","); } //#endregion export { route };