UNPKG

rsshub

Version:
28 lines (27 loc) 1.1 kB
import { t as parseDate } from "./parse-date-Cr0wQjV_.mjs"; import { t as got_default } from "./got-BTowW50G.mjs"; import { t as timezone } from "./timezone-BBvDwS_3.mjs"; import { load } from "cheerio"; //#region lib/routes/indienova/utils.ts const baseUrl = "https://indienova.com"; const parseList = ($) => $(".article-panel").toArray().map((item) => { const $item = $(item); const a = $item.find("h4 a"); return { title: a.text(), link: new URL(a.attr("href"), baseUrl).href, upvotes: $item.find(".number-first").text(), comments: $item.find(".number-last").text() }; }); const parseItem = async (item) => { const { data: response } = await got_default(item.link); const $ = load(response); item.description = $(".single-post").html(); item.author = $(".header-info > a").text(); const pubDate = $(".header-info").contents().filter((_, el) => el.nodeType === 3).text().trim().match(/(\d{4}-\d{2}-\d{2})/)?.[0]; item.pubDate = pubDate ? timezone(parseDate(pubDate, "YYYY-MM-DD"), 8) : null; return item; }; //#endregion export { parseItem as n, parseList as r, baseUrl as t };