UNPKG

rsshub

Version:
52 lines (51 loc) 1.47 kB
import { t as rofetch } from "./ofetch-U0CdpE2g.mjs"; import { t as parseDate } from "./parse-date-3kcy2Eau.mjs"; import { load } from "cheerio"; //#region lib/routes/xyu/library.ts const route = { path: "/library", categories: ["university"], example: "/xyu/library", features: { requireConfig: false, requirePuppeteer: false, antiCrawler: false, supportBT: false, supportPodcast: false, supportScihub: false }, name: "图书馆通知公告", maintainers: ["JinMokai"], handler, url: "lib.xyc.edu.cn/index/tzgg.htm", radar: [{ source: ["lib.xyc.edu.cn/index/tzgg.htm"], target: "/library" }] }; async function handler() { const baseUrl = "https://lib.xyc.edu.cn"; const url = `${baseUrl}/index/tzgg.htm`; const response = await rofetch(url); const $ = load(response); return { title: "新余学院图书馆通知公告", link: url, item: $(".text-list ul li").toArray().map((item) => { const $item = $(item); const $link = $item.find("a"); const title = $link.attr("title") || $link.text(); const relativeUrl = $link.attr("href"); const link = relativeUrl ? new URL(relativeUrl, baseUrl).href : ""; const dateText = $item.find(".date").text().trim() || $item.text().match(/\d{4}-\d{2}-\d{2}/)?.[0] || ""; return { title, link, pubDate: parseDate(dateText, "YYYY-MM-DD"), description: title }; }).filter((item) => Boolean(item.title && item.link)) }; } //#endregion export { route };