import{t as e}from"./config-BYRrjYC5.mjs";import{t}from"./cache-DUthuMSu.mjs";import{t as n}from"./parse-date-BdYTmLpo.mjs";import{t as r}from"./got-BBDj7u1e.mjs";import{t as i}from"./timezone-keeL11Io.mjs";import{t as a}from"./config-not-found-B9AOp828.mjs";import{jsx as o}from"hono/jsx/jsx-runtime";import{load as s}from"cheerio";import{renderToString as c}from"hono/jsx/dom/server";const l=new Set([`2btjia.com`,`88btbtt.com`,`btbtt15.com`,`btbtt20.com`]),u=e=>c(o(`table`,{children:e.map(e=>o(`tr`,{children:o(`td`,{children:e})}))})),d={path:`/:category?`,categories:[`multimedia`],example:`/btzj`,parameters:{category:`分类，可在对应分类页 URL 中找到，默认为首页`},features:{requireConfig:!1,requirePuppeteer:!1,antiCrawler:!1,supportBT:!1,supportPodcast:!1,supportScihub:!1},radar:[{source:[`btbtt20.com/`]}],name:`分类`,maintainers:[`nczitzk`],handler:f,url:`btbtt20.com/`,description:"::: tip\n  分类页中域名末尾到 `.htm` 前的字段即为对应分类，如 [电影](https://www.btbtt20.com/forum-index-fid-951.htm) `https://www.btbtt20.com/forum-index-fid-951.htm` 中域名末尾到 `.htm` 前的字段为 `forum-index-fid-951`，所以路由应为 [`/btzj/forum-index-fid-951`](https://rsshub.app/btzj/forum-index-fid-951)\n\n  部分分类页，如 [电影](https://www.btbtt20.com/forum-index-fid-951.htm)、[剧集](https://www.btbtt20.com/forum-index-fid-950.htm) 等，提供了更复杂的分类筛选。你可以将选项选中后，获得结果分类页 URL 中分类参数，构成路由。如选中分类 [高清电影 - 年份：2021 - 地区：欧美](https://www.btbtt20.com/forum-index-fid-1183-typeid1-0-typeid2-738-typeid3-10086-typeid4-0.htm) `https://www.btbtt20.com/forum-index-fid-1183-typeid1-0-typeid2-738-typeid3-10086-typeid4-0.htm` 中域名末尾到 `.htm` 前的字段为 `forum-index-fid-1183-typeid1-0-typeid2-738-typeid3-10086-typeid4-0`，所以路由应为 [`/btzj/forum-index-fid-1183-typeid1-0-typeid2-738-typeid3-10086-typeid4-0`](https://rsshub.app/btzj/forum-index-fid-1183-typeid1-0-typeid2-738-typeid3-10086-typeid4-0)\n:::\n\n  基础分类如下：\n\n| 交流                | 电影                | 剧集                | 高清电影             |\n| ------------------- | ------------------- | ------------------- | -------------------- |\n| forum-index-fid-975 | forum-index-fid-951 | forum-index-fid-950 | forum-index-fid-1183 |\n\n| 音乐                | 动漫                | 游戏                | 综艺                 |\n| ------------------- | ------------------- | ------------------- | -------------------- |\n| forum-index-fid-953 | forum-index-fid-981 | forum-index-fid-955 | forum-index-fid-1106 |\n\n| 图书                 | 美图                | 站务              | 科技                |\n| -------------------- | ------------------- | ----------------- | ------------------- |\n| forum-index-fid-1151 | forum-index-fid-957 | forum-index-fid-2 | forum-index-fid-952 |\n\n| 求助                 | 音轨字幕             |\n| -------------------- | -------------------- |\n| forum-index-fid-1187 | forum-index-fid-1191 |\n\n::: tip\n  BT 之家的域名会变更，本路由以 `https://www.btbtt20.com` 为默认域名，若该域名无法访问，可以通过在路由后方加上 `?domain=<域名>` 指定路由访问的域名。如指定域名为 `https://www.btbtt15.com`，则在 `/btzj` 后加上 `?domain=btbtt15.com` 即可，此时路由为 [`/btzj?domain=btbtt15.com`](https://rsshub.app/btzj?domain=btbtt15.com)\n\n  如果加入了分类参数，直接在分类参数后加入 `?domain=<域名>` 即可。如指定分类 [剧集](https://www.btbtt20.com/forum-index-fid-950.htm) `https://www.btbtt20.com/forum-index-fid-950.htm` 并指定域名为 `https://www.btbtt15.com`，即在 `/btzj/forum-index-fid-950` 后加上 `?domain=btbtt15.com`，此时路由为 [`/btzj/forum-index-fid-950?domain=btbtt15.com`](https://rsshub.app/btzj/forum-index-fid-950?domain=btbtt15.com)\n\n  目前，你可以选择的域名有 `btbtt10-20.com` 共 10 个，或 `88btbbt.com`，该站也提供了专用网址查询工具。详见 [此贴](https://www.btbtt20.com/thread-index-fid-2-tid-4550191.htm)\n:::"};async function f(o){let c=o.req.param(`category`)??``,d=o.req.query(`domain`)??`btbtt15.com`;if(!e.feature.allow_user_supply_unsafe_domain&&!l.has(new URL(`http://${d}/`).hostname))throw new a(`This RSS is disabled unless 'ALLOW_USER_SUPPLY_UNSAFE_DOMAIN' is set to 'true'.`);c===`base`?(c=``,d=`88btbtt.com`):c===`govern`&&(c=``,d=`2btjia.com`);let f=`https://www.${d}`,p=`${f}${c?`/${c}.htm`:``}`,m=s((await r({method:`get`,url:p})).data);m(`.bg2`).prevAll(`table`).remove();let h=m(`#threadlist table`).toArray().map(e=>{let t=m(e).find(`.subject_link`);return{title:t.text(),link:`${f}/${t.attr(`href`)}`}});return h=await Promise.all(h.map(e=>t.tryGet(e.link,async()=>{let t=s((await r({method:`get`,url:e.link})).data);t(`h2, .message`).remove(),t(`.attachlist`).find(`a`).each(function(){t(this).children(`img`).attr(`src`,`${f}${t(this).children(`img`).attr(`src`)}`),t(this).attr(`href`,`${f}/${t(this).attr(`href`).replace(/^attach-dialog/,`attach-download`)}`)});let a=t(`.attachlist`).find(`a`);return e.description=t(`.post`).html(),e.author=t(`.purple, .grey`).first().prev().text(),e.pubDate=i(n(t(`.bg2 b`).first().text()),8),a.length>0&&(e.description+=u(a.toArray().map(e=>t(e).parent().html())),e.enclosure_type=`application/x-bittorrent`,e.enclosure_url=a.first().attr(`href`)),e}))),{title:`${m(`#menu, #threadtype`).find(`.checked`).toArray().map(e=>m(e).text()).filter(e=>e!==`全部`).join(`|`)} - BT之家`,link:p,item:h}}export{d as route};