UNPKG

rsshub

Version:
55 lines (53 loc) 1.48 kB
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 "./helpers-DxBp0Pty.mjs"; import { t as got_default } from "./got-KxxWdaxq.mjs"; import { load } from "cheerio"; //#region lib/routes/cmu/andypavlo/blog.ts async function getArticles() { const { data: res } = await got_default("https://www.cs.cmu.edu/~pavlo/blog/index.html"); const $ = load(res); return $(".row.mb-3").toArray().map((element) => { const $item = $(element); const $title = $item.find("h4 a"); const $date = $item.find(".text-muted"); const $description = $item.find("p"); return { title: $title.text().trim(), link: $title.attr("href"), description: $description.text().trim(), pubDate: parseDate($date.attr("title")), guid: $title.attr("href") }; }); } const route = { path: "/andypavlo/blog", categories: ["blog"], example: "/cmu/andypavlo/blog", parameters: {}, features: { requireConfig: false, requirePuppeteer: false, antiCrawler: false, supportBT: false, supportPodcast: false, supportScihub: false }, name: "Andy Pavlo Blog", maintainers: ["mocusez"], handler }; async function handler() { return { title: "Andy Pavlo - Carnegie Mellon University", link: "https://www.cs.cmu.edu/~pavlo/blog/index.html", item: await getArticles() }; } //#endregion export { route };