UNPKG

rsshub

Version:
47 lines (46 loc) 1.39 kB
import { t as rofetch } from "./ofetch-U0CdpE2g.mjs"; import { t as parseDate } from "./parse-date-3kcy2Eau.mjs"; import { t as cache_default } from "./cache-C1Y-9qDV.mjs"; import { t as timezone } from "./timezone-UiMFOuvL.mjs"; import { load } from "cheerio"; //#region lib/routes/grandwaylaw/index.ts const route = { path: "/", categories: ["other"], example: "/grandwaylaw", radar: [{ source: ["www.grandwaylaw.com/guofengshijiao"] }], name: "国枫视角", maintainers: ["snipersteve"], handler, url: "www.grandwaylaw.com/guofengshijiao/" }; async function handler() { const baseUrl = "https://www.grandwaylaw.com"; const link = `${baseUrl}/guofengshijiao/`; const response = await rofetch(link); const $ = load(response); const list = $("ul.hmNews li").toArray().map((item) => { const a = $(item).find("a"); const date = a.find("span"); const pubDate = timezone(parseDate(date.text(), "YYYY.MM.DD"), 8); date.remove(); return { title: a.text(), link: new URL(a.attr("href"), baseUrl).href, pubDate }; }); const out = await Promise.all(list.map((item) => cache_default.tryGet(item.link, async () => { const response = await rofetch(item.link); item.description = load(response)(".arCon").html()?.trim(); return item; }))); return { title: $("head title").text(), link, language: "zh", item: out }; } //#endregion export { route };