rsshub
Version:
Make RSS Great Again!
58 lines (56 loc) • 1.54 kB
JavaScript
import "./dist-Bog6z_OM.mjs";
import "./config-MQ-7ebJ_.mjs";
import "./logger-C4avouvV.mjs";
import { t as ofetch_default } from "./ofetch-DKl_Ma9g.mjs";
import { t as parseDate } from "./parse-date-r5WDWHno.mjs";
import { load } from "cheerio";
//#region lib/routes/anime1/anime.ts
const route = {
path: "anime/:category/:name",
name: "Anime",
url: "anime1.me",
maintainers: ["cxheng315"],
example: "/anime1/anime/2024年夏季/神之塔-第二季",
categories: ["anime"],
parameters: {
category: "Anime1 Category",
name: "Anime1 Name"
},
features: {
requireConfig: false,
requirePuppeteer: false,
antiCrawler: false,
supportBT: false,
supportPodcast: false,
supportScihub: false
},
radar: [{
source: ["anime1.me/category/:category/:name"],
target: "/anime/:category/:name"
}],
handler
};
async function handler(ctx) {
const { category, name } = ctx.req.param();
const $ = load(await ofetch_default(`https://anime1.me/category/${category}/${name}`));
const title = $(".page-title").text().trim();
const items = $("article").toArray().map((el) => {
const $el = $(el);
const title = $el.find(".entry-title a").text().trim();
return {
title,
link: $el.find(".entry-title a").attr("href"),
description: title,
pubDate: parseDate($el.find("time").attr("datetime") || ""),
itunes_item_image: $el.find("video").attr("poster")
};
});
return {
title,
link: `https://anime1.me/category/${category}/${name}`,
description: title,
item: items
};
}
//#endregion
export { route };