rsshub
Version:
Make RSS Great Again!
58 lines (56 loc) • 1.96 kB
JavaScript
import "./esm-shims-CzJ_djXG.mjs";
import "./config-C37vj7VH.mjs";
import "./dist-BInvbO1W.mjs";
import "./logger-Czu8UMNd.mjs";
import "./ofetch-BIyrKU3Y.mjs";
import { t as parseDate } from "./parse-date-BrP7mxXf.mjs";
import { t as cache_default } from "./cache-Bo__VnGm.mjs";
import "./helpers-DxBp0Pty.mjs";
import { t as got_default } from "./got-KxxWdaxq.mjs";
import { t as timezone } from "./timezone-D8cuwzTY.mjs";
import { load } from "cheerio";
//#region lib/routes/ecnu/jwc.ts
const type = (filename) => filename.split(".").pop();
const route = {
path: "/jwc",
categories: ["university"],
example: "/ecnu/jwc",
radar: [{
source: ["www.jwc.ecnu.edu.cn"],
target: "/tzgg"
}, {
source: ["www.ecnu.edu.cn"],
target: "/tzgg"
}],
name: "教务处通知",
maintainers: ["markbang"],
handler: async () => {
const baseUrl = "http://www.jwc.ecnu.edu.cn/";
const $ = load((await got_default(`${baseUrl}tzggwwxsgg/list.htm`)).data);
const links = $(".col_news_con ul.news_list > li").toArray().map((el) => ({
pubDate: timezone(parseDate($(el).find(".news_date").text()), 8),
link: new URL($(el).find("a").attr("href"), baseUrl).toString(),
title: $(el).find("a").text()
}));
return {
title: "教务处通知",
link: "http://www.jwc.ecnu.edu.cn/tzggwwxsgg/list.htm",
item: await Promise.all(links.map((item) => cache_default.tryGet(item.link, async () => {
if (type(item.link) === "htm") try {
const { data } = await got_default(item.link, { https: { rejectUnauthorized: false } });
item.description = load(data)("div.article")?.html()?.replaceAll("src=\"/", `src="${baseUrl}/`)?.replaceAll("href=\"/", `href="${baseUrl}/`)?.trim();
return item;
} catch {
item.description = "请进行统一身份认证之后再访问";
return item;
}
else {
item.description = "点击认证后访问内容";
return item;
}
})))
};
}
};
//#endregion
export { route };