rsshub
Version:
Make RSS Great Again!
41 lines (40 loc) • 1.37 kB
JavaScript
import { t as got_default } from "./got-DUpa1V3-.mjs";
import { n as parseScriptData } from "./parse-script-data-DunIeu2B.mjs";
import { load } from "cheerio";
//#region lib/routes/hotukdeals/hottest.ts
const route = {
path: "/hottest",
categories: ["shopping"],
example: "/hotukdeals/hottest",
parameters: {},
features: {
requireConfig: false,
requirePuppeteer: false,
antiCrawler: true,
supportBT: false,
supportPodcast: false,
supportScihub: false
},
radar: [{ source: ["www.hotukdeals.com/"] }],
name: "hottest",
maintainers: ["DIYgod"],
handler,
url: "www.hotukdeals.com/"
};
async function handler() {
const data = await got_default.get("https://www.hotukdeals.com/");
const $ = load(data.data);
const script = $("script").toArray().map((element) => $(element).text()).filter((source) => source.includes("__INITIAL_STATE__")).join("\n");
const { widgets } = parseScriptData(script, "__INITIAL_STATE__");
return {
title: "hotukdeals hottest",
link: "https://www.hotukdeals.com/",
item: widgets.hottestWidget.threads.map((item) => ({
title: item.title,
description: `<img src="https://images.hotukdeals.com/${item.mainImage.path}/${item.mainImage.name}/re/768x768/qt/60/${item.mainImage.name}.jpg"><br>${item.temperature}° ${item.title}<br>${item.displayPrice}`,
link: item.url
}))
};
}
//#endregion
export { route };