UNPKG

rsshub

Version:
73 lines (71 loc) 2.64 kB
import "./esm-shims-CzJ_djXG.mjs"; import "./config-C37vj7VH.mjs"; import { t as ViewType } from "./types-D84BRIt4.mjs"; import "./dist-BInvbO1W.mjs"; import "./logger-Czu8UMNd.mjs"; import { t as ofetch_default } from "./ofetch-BIyrKU3Y.mjs"; import "./parse-date-BrP7mxXf.mjs"; import "./cache-Bo__VnGm.mjs"; import "./timezone-D8cuwzTY.mjs"; import { n as rootUrl, t as processItems } from "./util-B5mTUIof.mjs"; import { load } from "cheerio"; //#region lib/routes/jisilu/explore.ts const handler = async (ctx) => { const { filter } = ctx.req.param(); const limit = Number.parseInt(ctx.req.query("limit") ?? "30", 10); const targetUrl = new URL(`/${filter ? "home/" : ""}explore/${filter ?? ""}`, rootUrl).href; const $ = load(await ofetch_default(targetUrl)); const language = $("html").prop("lang") ?? "zh"; const items = await processItems($, $("div.aw-question-list"), limit); $("div.pagination").remove(); const author = $("meta[name=\"keywords\"]").prop("content").split(/,/)[0]; const feedImage = $("div.aw-logo img").prop("src"); return { title: `${$("title").text()} - ${$("li.active").slice(1).toArray().map((l) => $(l).text()).join("|")}`, description: $("meta[name=\"description\"]").prop("content"), link: targetUrl, item: items, allowEmpty: true, image: feedImage, author, language, id: targetUrl }; }; const route = { path: "/explore/:filter?", name: "广场", url: "www.jisilu.cn", maintainers: ["nczitzk"], handler, example: "/jisilu/explore", parameters: { category: "过滤器,默认为空,可在对应页 URL 中找到" }, description: `::: tip 若订阅 [债券/可转债 - 热门 - 30天](https://www.jisilu.cn/home/explore/category-4__sort_type-hot__day-30),网址为 \`https://www.jisilu.cn/home/explore/category-4__sort_type-hot__day-30\`,请截取 \`https://www.jisilu.cn/home/explore/\` 到末尾的部分 \`category-4__sort_type-hot__day-30\` 作为 \`filter\` 参数填入,此时目标路由为 [\`/jisilu/explore/category-4__sort_type-hot__day-30\`](https://rsshub.app/jisilu/explore/category-4__sort_type-hot__day-30)。 ::: `, categories: ["finance"], features: { requireConfig: false, requirePuppeteer: false, antiCrawler: false, supportRadar: true, supportBT: false, supportPodcast: false, supportScihub: false }, radar: [{ source: [ "www.jisilu.cn/home/explore/:filter", "www.jisilu.cn/home/explore", "www.jisilu.cn/explore" ], target: (params) => { const filter = params.filter; return `/jisilu/explore${filter ? `/${filter}` : ""}`; } }], view: ViewType.Articles }; //#endregion export { handler, route };