UNPKG

rsshub

Version:
54 lines (52 loc) 1.36 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 "./ofetch-BIyrKU3Y.mjs"; import "./helpers-DxBp0Pty.mjs"; import { t as got_default } from "./got-KxxWdaxq.mjs"; import { load } from "cheerio"; //#region lib/routes/v2ex/xna.ts const route = { path: "/xna", categories: ["bbs", "blog"], view: ViewType.Articles, example: "/v2ex/xna", parameters: {}, features: { requireConfig: false, requirePuppeteer: false, antiCrawler: false, supportBT: false, supportPodcast: false, supportScihub: false }, name: "XNA", maintainers: ["luckyscript"], handler }; async function handler(ctx) { const pageUrl = `https://v2ex.com/xna`; const $ = load((await got_default({ method: "get", url: pageUrl })).data); return { title: `V2EX-xna`, link: pageUrl, description: `V2EX-xna`, item: $("div.xna-entry-main-container").toArray().slice(0, ctx.req.query("limit") ? Number.parseInt(ctx.req.query("limit")) : 50).map((dom) => { const link = $(dom).find(".xna-entry-title > a"); const author = $(dom).find(".xna-source-author > a").text(); return { title: $(link).text(), link: $(link).attr("href"), description: $(link).text(), author }; }) }; } //#endregion export { route };