rsshub
Version:
Make RSS Great Again!
65 lines (62 loc) • 1.97 kB
JavaScript
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/tingshuitz/changsha.ts
const baseUrl = "http://www.supplywater.com";
const route = {
path: "/changsha/:channelId?",
categories: ["forecast"],
example: "/tingshuitz/changsha/78",
parameters: { channelId: "N" },
features: {
requireConfig: false,
requirePuppeteer: false,
antiCrawler: false,
supportBT: false,
supportPodcast: false,
supportScihub: false
},
name: "长沙市",
maintainers: ["shansing"],
handler,
description: `可能仅限于中国大陆服务器访问,以实际情况为准。
| channelId | 分类 |
| --------- | -------- |
| 78 | 计划停水 |
| 157 | 抢修停水 |`
};
async function handler(ctx) {
const { channelId = 78 } = ctx.req.param();
const $ = load((await got_default("http://www.supplywater.com/tstz-" + channelId + ".aspx")).data);
const pageName = $(".mainRightBox .news-title").text();
const list = $(".mainRightBox .announcements-title a").toArray().map((item) => {
item = $(item);
return {
title: item.text().trim(),
link: baseUrl + item.attr("href").trim()
};
});
const items = await Promise.all(list.map(async (item) => {
const $$1 = load((await got_default(item.link)).data);
return {
title: item.title,
description: $$1(".mainRightBox div:last").html().trim(),
pubDate: parseDate($$1(".mainRightBox .gxsj span:first").text() + " +0800", "YYYY/M/D H:m:s ZZ"),
link: item.link,
author: $$1(".mainRightBox .gxsj span:last").text()
};
}));
return {
title: `${pageName}通知 - 长沙水业集团`,
link: `${baseUrl}/fuwuzhinan.aspx`,
item: items
};
}
//#endregion
export { route };