UNPKG

rsshub

Version:
38 lines (37 loc) 1.1 kB
import { t as rofetch } from "./ofetch-W1aeTHCo.mjs"; import { t as parseDate } from "./parse-date-CjhZE69i.mjs"; import { load } from "cheerio"; //#region lib/routes/huya/live.ts const route = { path: "/live/:id", categories: ["live"], example: "/huya/live/edmunddzhang", parameters: { id: "直播间id或主播名(有一些id是名字,如上)" }, radar: [{ source: ["huya.com/:id"] }], name: "直播间开播", maintainers: ["SettingDust", "xyqfer"], handler }; async function handler(ctx) { const { id } = ctx.req.param(); const url = `https://www.huya.com/${id}`; const response = await rofetch(url); const $ = load(response); const roomData = JSON.parse(response.match(/TT_ROOM_DATA = (.*?);/)[1]); let item; if (roomData.isOn) item = [{ title: roomData.introduction, description: `<img src="${roomData.screenshot}">`, guid: `${roomData.liveId}:${roomData.startTime}`, pubDate: parseDate(roomData.startTime, "X"), link: url }]; return { title: `${$(".host-name").text()}的虎牙直播`, link: url, item, allowEmpty: true }; } //#endregion export { route };