rsshub
Version:
Make RSS Great Again!
72 lines (70 loc) • 2.51 kB
JavaScript
import { n as init_esm_shims, t as __dirname } from "./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 { t as art } from "./render-BQo6B4tL.mjs";
import { t as got_default } from "./got-KxxWdaxq.mjs";
import path from "node:path";
import { load } from "cheerio";
//#region lib/routes/yxdzqb/index.ts
init_esm_shims();
const host = "https://www.yxdzqb.com";
const map = {
new: "index_discount.html",
hot: "index_popular.html",
hot_chinese: "index_popular_cn.html",
low: "index_low.html",
low_chinese: "index_low_cn.html"
};
const route = {
path: "/:type",
categories: ["game"],
example: "/yxdzqb/popular_cn",
parameters: { type: "折扣类型" },
features: {
requireConfig: false,
requirePuppeteer: false,
antiCrawler: false,
supportBT: false,
supportPodcast: false,
supportScihub: false
},
radar: [{ source: ["yxdzqb.com/"] }],
name: "游戏折扣",
maintainers: ["LogicJake", "nczitzk"],
handler,
url: "yxdzqb.com/",
description: `| Steam 最新折扣 | Steam 热门游戏折扣 | Steam 热门中文游戏折扣 | Steam 历史低价 | Steam 中文游戏历史低价 |
| -------------- | ------------------ | ---------------------- | -------------- | ---------------------- |
| discount | popular | popular\_cn | low | low\_cn |`
};
async function handler(ctx) {
const type = ctx.req.param("type");
const link = `${host}/${Object.hasOwn(map, type) ? map[type] : `index_${type}.html`}`;
const $ = load((await got_default.get(link)).data);
const title = $(".btn-primary b").text() || $(".btn-danger b").text() || $(".btn-info b").text();
const out = $("tr.bg-none").toArray().map((item) => {
item = $(item);
const title$1 = item.find("div table:nth-child(1) tr td:nth-child(1)").text();
const description = art(path.join(__dirname, "templates/description-994b84e5.art"), {
src: item.find("table.cell_tabs > tbody > tr > td:nth-child(1) > img").attr("src"),
description: item.find("div.collapse").html()
});
const link$1 = item.find("div.collapse table.cell_tabs > tbody > tr > td:nth-child(1) > a").attr("href");
return {
title: title$1,
description,
link: link$1,
guid: link$1 + item.find("div.cell_price span:nth-child(2)").text()
};
});
return {
title: `${title}-游戏打折情报`,
link,
item: out
};
}
//#endregion
export { route };