UNPKG

rsshub

Version:
62 lines (61 loc) 1.9 kB
import { t as parseDate } from "./parse-date-Cr0wQjV_.mjs"; import { t as timezone } from "./timezone-BBvDwS_3.mjs"; import { t as InvalidParameterError } from "./invalid-parameter-CGxhjomn.mjs"; import { t as getContent } from "./utils-CFkZUlCD.mjs"; import { load } from "cheerio"; //#region lib/routes/njust/cs.ts const map = /* @__PURE__ */ new Map([ ["xyxw", { title: "南京理工大学计算机学院 -- 学院新闻", id: "/1817" }], ["tzgg", { title: "南京理工大学计算机学院 -- 通知公告", id: "/1820" }], ["xsdt", { title: "南京理工大学计算机学院 -- 学术动态", id: "/5790" }] ]); const host = "https://cs.njust.edu.cn"; const route = { path: "/cs/:type?", categories: ["university"], example: "/njust/cs/xyxw", parameters: { type: "分类名,见下表,默认为学院新闻" }, features: { requireConfig: false, requirePuppeteer: true, antiCrawler: false, supportBT: false, supportPodcast: false, supportScihub: false }, name: "计算机学院", maintainers: ["Horacecxk", "jasongzy"], handler, description: `| 学院新闻 | 通知公告 | 学术动态 | | -------- | -------- | -------- | | xyxw | tzgg | xsdt |` }; async function handler(ctx) { const type = ctx.req.param("type") ?? "xyxw"; const info = map.get(type); if (!info) throw new InvalidParameterError("invalid type"); const id = info.id; const siteUrl = host + id + "/list.htm"; const $ = load(await getContent(siteUrl, true)); const list = $("div#wp_news_w9").find("a"); return { title: info.title, link: siteUrl, item: list.toArray().map((item) => ({ title: $(item).find("span[class=\"column-news-title\"]").text().trim(), pubDate: timezone(parseDate($(item).find("span[class=\"column-news-date news-date-hide\"]").text(), "YYYY-MM-DD"), 8), link: $(item).attr("href") })) }; } //#endregion export { route };