rsshub
Version:
Make RSS Great Again!
50 lines (49 loc) • 1.33 kB
JavaScript
import { t as rofetch } from "./ofetch-C3ts-Hud.mjs";
import "./types-DNj6Etbg.mjs";
import { t as parseDate } from "./parse-date-Cr0wQjV_.mjs";
import { load } from "cheerio";
//#region lib/routes/cognition/blog.ts
const route = {
path: "/blog",
name: "Blog",
url: "cognition.com/blog",
maintainers: ["Loongphy", "ttttmr"],
example: "/cognition/blog",
categories: ["programming"],
features: {
requireConfig: false,
requirePuppeteer: false,
antiCrawler: false,
supportRadar: true,
supportBT: false,
supportPodcast: false,
supportScihub: false
},
radar: [{ source: ["cognition.com/blog"] }],
view: 0,
handler
};
async function handler() {
const baseUrl = "https://cognition.com";
const targetUrl = `${baseUrl}/blog`;
const $ = load(await rofetch(targetUrl));
const items = $("section li a").toArray().map((item) => {
const $item = $(item);
return {
title: $item.find("h2").text(),
link: new URL($item.attr("href"), baseUrl).href,
description: $item.find("p").text(),
pubDate: parseDate($item.find("span").text(), "MM.DD.YY")
};
});
return {
title: $("title").text(),
description: $("meta[name=\"description\"]").attr("content"),
link: targetUrl,
allowEmpty: true,
item: items,
image: $("meta[property=\"og:image\"]").attr("content")
};
}
//#endregion
export { route };