mirror of
https://github.com/yuanwangokk-1/TV-BOX.git
synced 2025-10-22 16:21:23 +00:00
358 lines
No EOL
98 KiB
JSON
358 lines
No EOL
98 KiB
JSON
[
|
||
{
|
||
"last_chapter_rule": "",
|
||
"title": "Jable",
|
||
"author": "TyrantGenesis",
|
||
"url": "https://jable.tv/fyAll/?from=fypage",
|
||
"version": 2,
|
||
"col_type": "movie_2",
|
||
"class_name": "热门&最新&最近更新",
|
||
"type": "video",
|
||
"class_url": "hot&new-release&latest-updates",
|
||
"area_name": "主奴調教&直接開啪&中文字幕&凌辱強暴&制服誘惑&角色劇情&盜攝偷 拍&無碼解放&男友視角&多P群交&絲襪美腿&女同歡愉",
|
||
"area_url": "categories/bdsm&categories/sex-only&categories/chinese-subtitle&categories/rape&categories/uniform&categories/roleplay&categories/hidden-cam&categories/uncensored&categories/pov&categories/groupsex&categories/pantyhose&categories/lesbian",
|
||
"sort_name": "",
|
||
"year_name": "黑 絲&過 膝 襪&運 動 裝&肉 絲&絲 襪&眼 鏡 娘&獸 耳&漁 網&水 着&校 服&旗 袍&婚 紗&女 僕&和 服&吊 帶 襪&兔 女 郎&Cosplay&黑 肉&長 身&軟 體&貧 乳&蘿 莉&美 腿&美 尻&紋 身&短 髮&白 虎&熟 女&巨 乳&少 女&顏 射&腳 交&肛 交&痙 攣&潮 吹&深 喉&接 吻&口 爆&口 交&乳 交&中 出&露 出&輪 姦&調 教&綑 綁&瞬 間 插 入&痴 漢&痴 女&男 M&泥 醉&泡 姬&母 乳&放 尿&按 摩&強 姦&多 P&刑 具&凌 辱&一 日 十 回&3 P&黑 人&醜 男&誘 惑&童 貞&時 間 停 止&復 仇&年 齡 差&巨 漢&媚 藥&夫 目 前 犯&出 軌&催 眠&偷 拍&不 倫&下 雨 天&N T R&風 俗 娘&醫 生&逃 犯&護 士&老 師&空 姐&球 隊 經 理&未 亡 人&搜 查 官&情 侶&家 政 婦&家 庭 教 師&偶 像&人 妻&主 播&O L&魔 鏡 號&電 車&處 女&監 獄&溫 泉&洗 浴 場&泳 池&汽 車&廁 所&學 校&圖 書 館&健 身 房&便 利 店&錄 像&處 女 作/引 退 作&綜 藝&節 日 主 題&感 謝 祭&4 小 時 以 上",
|
||
"sort_url": "",
|
||
"year_url": "tags/black-pantyhose/&tags/knee-socks/&tags/sportswear/&tags/flesh-toned-pantyhose/&tags/pantyhose/&tags/glasses/&tags/kemonomimi/&tags/fishnets/&tags/swimsuit/&tags/school-uniform/&tags/cheongsam/&tags/wedding-dress/&tags/maid/&tags/kimono/&tags/stockings/&tags/bunny-girl/&tags/Cosplay/&tags/suntan/&tags/tall/&tags/flexible-body/&tags/small-tits/&tags/loli/&tags/beautiful-leg/&tags/beautiful-butt/&tags/tattoo/&tags/short-hair/&tags/hairless-pussy/&tags/mature-woman/&tags/big-tits/&tags/girl/&tags/facial/&tags/footjob/&tags/anal-sex/&tags/spasms/&tags/squirting/&tags/deep-throat/&tags/kiss/&tags/cum-in-mouth/&tags/blowjob/&tags/tit-wank/&tags/creampie/&tags/outdoor/&tags/gang-rape/&tags/tune/&tags/bondage/&tags/quickie/&tags/chikan/&tags/chizyo/&tags/masochism-guy/&tags/crapulence/&tags/soapland/&tags/breast-milk/&tags/piss/&tags/massage/&tags/rape/&tags/gangbang/&tags/torture/&tags/insult/&tags/10-times-a-day/&tags/3p/&tags/black/&tags/ugly-man/&tags/temptation/&tags/virginity/&tags/time-stop/&tags/avenge/&tags/age-difference/&tags/giant/&tags/love-potion/&tags/sex-beside-husband/&tags/affair/&tags/hypnosis/&tags/hidden-cam/&tags/incest/&tags/rainy-day/&tags/ntr/&tags/club-hostess-and-sex-worker/&tags/doctor/&tags/fugitive/&tags/nurse/&tags/teacher/&tags/flight-attendant/&tags/team-manager/&tags/widow/&tags/detective/&tags/couple/&tags/housewife/&tags/private-teacher/&tags/idol/&tags/wife/&tags/female-anchor/&tags/ol/&tags/magic-mirror/&tags/tram/&tags/first-night/&tags/prison/&tags/hot-spring/&tags/bathing-place/&tags/swimming-pool/&tags/car/&tags/toilet/&tags/school/&tags/library/&tags/gym-room/&tags/store/&tags/video-recording/&tags/debut-retires/&tags/variety-show/&tags/festival/&tags/thanksgiving/&tags/more-than-4-hours/",
|
||
"find_rule": "js:\neval(fetch(\"hiker://files/TyrantG/GHS/jable.js\"))\nbaseParse()",
|
||
"search_url": "https://jable.tv/search/**/?from_videos=fypage&from_albums=fypage",
|
||
"group": "TyrantG",
|
||
"searchFind": "js:\neval(fetch(\"hiker://files/TyrantG/GHS/jable.js\"))\nbaseParse()",
|
||
"detail_col_type": "pic_1",
|
||
"detail_find_rule": "",
|
||
"sdetail_col_type": "pic_1",
|
||
"sdetail_find_rule": "",
|
||
"ua": "mobile",
|
||
"preRule": "eval(fetch(\"https://git.tyrantg.com/tyrantgenesis/hikerViewRules/raw/master/God_Plan.js\"))\njable()",
|
||
"pages": "[]",
|
||
"icon": "https://assets-cdn.jable.tv/assets/icon/apple-touch-icon.png?v=8"
|
||
},
|
||
{
|
||
"last_chapter_rule": "",
|
||
"title": "MissAV",
|
||
"author": "TyrantGenesis",
|
||
"url": "hiker://empty##fypage",
|
||
"version": 3,
|
||
"col_type": "movie_3",
|
||
"class_name": "",
|
||
"type": "video",
|
||
"class_url": "",
|
||
"area_name": "",
|
||
"area_url": "",
|
||
"sort_name": "",
|
||
"year_name": "",
|
||
"sort_url": "",
|
||
"year_url": "",
|
||
"find_rule": "js:\n$.require('hiker://page/miss').baseParse()",
|
||
"search_url": "https://missav.com/cn/search/**?page=fypage;get;UTF-8;{User-Agent@Mozilla/5.0 (Windows NT 10.0)}",
|
||
"group": "TyrantG",
|
||
"searchFind": "js:\n$.require('hiker://page/miss').searchParse()",
|
||
"detail_col_type": "movie_1",
|
||
"detail_find_rule": "",
|
||
"sdetail_col_type": "movie_1",
|
||
"sdetail_find_rule": "",
|
||
"ua": "mobile",
|
||
"preRule": "",
|
||
"pages": "[{\"col_type\":\"movie_3\",\"name\":\"miss\",\"path\":\"miss\",\"rule\":\"const miss = {\\n empty: 'hiker://empty',\\n url: 'https://missav.com/cn/',\\n d: [],\\n taskList: [],\\n data: {\\n category: getMyVar('MissAV.category', '0'),\\n subCate: getMyVar('MissAV.subCate', '0'),\\n },\\n baseParse: () => {\\n const page = parseInt(MY_URL.split('##')[1])\\n evalPrivateJS('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')\\n const currentCate = categoryList[miss.data.category]\\n let url\\n\\n const type = currentCate.type\\n const path = currentCate.path\\n\\n if (currentCate.sub.length > 0) {\\n url = miss.url + currentCate.sub[miss.data.subCate].path\\n } else {\\n url = miss.url + currentCate.path\\n }\\n url += '?page='+page\\n\\n if (page === 1) {\\n categoryList.forEach((cate, index) => {\\n miss.d.push({\\n title: parseInt(miss.data.category) === index ? '‘‘’’<strong><font color=\\\"#ff1493\\\">'+cate.title+'</font></strong>' : cate.title,\\n url: $(miss.empty).lazyRule((index) => {\\n putMyVar(\\\"MissAV.category\\\", index.toString())\\n putMyVar(\\\"MissAV.subCate\\\", '0')\\n refreshPage(true)\\n return \\\"hiker://empty\\\"\\n }, index),\\n col_type: 'scroll_button',\\n })\\n })\\n\\n if (currentCate.sub.length > 0) {\\n miss.d.push({\\n col_type: 'blank_block',\\n })\\n currentCate.sub.forEach((cate, index) => {\\n miss.d.push({\\n title: parseInt(miss.data.subCate) === index ? '‘‘’’<strong><font color=\\\"#ff1493\\\">'+cate.title+'</font></strong>' : cate.title,\\n url: $(miss.empty).lazyRule((index) => {\\n putMyVar(\\\"MissAV.subCate\\\", index.toString())\\n refreshPage(true)\\n return \\\"hiker://empty\\\"\\n }, index),\\n col_type: 'scroll_button',\\n })\\n })\\n }\\n }\\n\\n const html = fetch(url, {headers:{'User-Agent': 'Mozilla/5.0 (Windows NT 10.0)'}})\\n\\n switch (type) {\\n case 'video':\\n miss.videoType(html)\\n break\\n case 'articles':\\n miss.articlesType(html)\\n break\\n case 'avatar':\\n if ((path === 'actresses/ranking' && page === 1) || path !== 'actresses/ranking') {\\n miss.avatarType(html)\\n }\\n break\\n case 'tags':\\n miss.tagsType(html)\\n break\\n default: miss.videoType(html)\\n }\\n\\n setResult(miss.d)\\n },\\n searchParse: () => {\\n miss.videoType(getResCode())\\n setResult(miss.d)\\n },\\n videoParse: (url) => {\\n const html = fetch(url, {headers:{'User-Agent': 'Mozilla/5.0 (Windows NT 10.0)'}})\\n const title = pdfh(html, 'h1&&Text')\\n setPageTitle(title)\\n\\n miss.d.push({\\n title: title,\\n desc: pdfh(html, '.text-secondary.break-all.line-clamp-2&&Text'),\\n pic_url: pdfh(html, 'meta[property=og:image]&&content')+'@Referer='+miss.url,\\n url: $(miss.empty+'#noHistory#').lazyRule((html, url) => {\\n eval(html.match(/eval.*?\\\\n/)[0])\\n return source + ';{Referer@' + url + '}'\\n }, html, miss.url),\\n col_type: 'pic_1',\\n })\\n\\n const text_secondary_list = pdfa(html, 'body&&.text-secondary')\\n let num, actressesList, tagsList, series, makers, directors, labelsList\\n\\n text_secondary_list.forEach(item => {\\n let current_title = pdfh(item, 'span&&Text')\\n \\n evalPrivateJS('Y4FQHeH7R/bBJkyYPhawFEQS4LgKSes2yWCehUiVbT4=')\\n\\n if (current_title === '番号:') {\\n num = pdfh(item, '.font-medium&&Text')\\n } else if (current_title === actressName+':') {\\n actressesList = pdfa(item, '.text-secondary&&a')\\n } else if (current_title === '类型:') {\\n tagsList = pdfa(item, '.text-secondary&&a')\\n } else if (current_title === '系列:') {\\n series = pdfa(item, '.text-secondary&&a')[0]\\n } else if (current_title === '发行商:') {\\n makers = pdfa(item, '.text-secondary&&a')[0]\\n } else if (current_title === '导演:') {\\n directors = pdfa(item, '.text-secondary&&a')[0]\\n } else if (current_title === '标籤:') {\\n labelsList = pdfa(item, '.text-secondary&&a')\\n }\\n })\\n\\n if (num) {\\n miss.d.push({\\n title: '番号',\\n url: miss.empty,\\n col_type: 'text_center_1',\\n extra: {lineVisible: false},\\n })\\n miss.d.push({\\n title: num,\\n url: 'copy://'+num,\\n col_type: 'text_1',\\n extra: {lineVisible: false},\\n })\\n miss.d.push({\\n col_type: 'line_blank'\\n })\\n }\\n\\n if (actressesList) {\\n let avatarTaskList = []\\n miss.d.push({\\n title: '演员',\\n url: miss.empty,\\n col_type: 'text_center_1',\\n extra: {lineVisible: false},\\n })\\n actressesList.forEach((actresses, index) => {\\n let title = pdfh(actresses, 'a&&Text')\\n let url = pdfh(actresses, 'a&&href')\\n miss.taskList.push({\\n func: miss.updateAvatar,\\n param: {\\n url: url,\\n index: 'avatar_'+index\\n },\\n id: 'avatar_'+index,\\n })\\n\\n miss.d.push({\\n title: title,\\n pic_url: miss.empty,\\n url: $(url+'?page=fypage#noHistory#').rule((title) => {\\n const miss = $.require('hiker://page/miss')\\n setPageTitle(title)\\n miss.avatarParse(MY_URL)\\n setResult(miss.d)\\n }, title),\\n col_type: 'avatar',\\n extra: {\\n id: 'avatar_'+index,\\n }\\n })\\n })\\n miss.d.push({\\n col_type: 'line_blank'\\n })\\n }\\n\\n if (tagsList) {\\n miss.d.push({\\n title: '类型',\\n url: miss.empty,\\n col_type: 'text_center_1',\\n extra: {lineVisible: false},\\n })\\n tagsList.forEach(tag => {\\n let tag_title = pdfh(tag, 'a&&Text')\\n miss.d.push({\\n title: tag_title,\\n url: $(pdfh(tag, 'a&&href')+'?page=fypage#noHistory#').rule((tag_title) => {\\n const miss = $.require('hiker://page/miss')\\n setPageTitle(tag_title)\\n miss.tagsParse(MY_URL)\\n setResult(miss.d)\\n }, tag_title),\\n col_type: 'flex_button'\\n })\\n })\\n\\n miss.d.push({\\n col_type: 'line_blank'\\n })\\n }\\n\\n if (series) {\\n miss.d.push({\\n title: '系列',\\n url: miss.empty,\\n col_type: 'text_center_1',\\n extra: {lineVisible: false},\\n })\\n let series_title = pdfh(series, 'a&&Text')\\n miss.d.push({\\n title: series_title,\\n url: $(pdfh(series, 'a&&href')+'?page=fypage#noHistory#').rule((series_title) => {\\n const miss = $.require('hiker://page/miss')\\n setPageTitle(series_title)\\n miss.tagsParse(MY_URL)\\n setResult(miss.d)\\n }, series_title),\\n col_type: 'flex_button'\\n })\\n miss.d.push({\\n col_type: 'line_blank'\\n })\\n }\\n\\n if (makers) {\\n miss.d.push({\\n title: '发行商',\\n url: miss.empty,\\n col_type: 'text_center_1',\\n extra: {lineVisible: false},\\n })\\n let makers_title = pdfh(makers, 'a&&Text')\\n miss.d.push({\\n title: makers_title,\\n url: $(pdfh(makers, 'a&&href')+'?page=fypage#noHistory#').rule((makers_title) => {\\n const miss = $.require('hiker://page/miss')\\n setPageTitle(makers_title)\\n miss.tagsParse(MY_URL)\\n setResult(miss.d)\\n }, makers_title),\\n col_type: 'flex_button'\\n })\\n miss.d.push({\\n col_type: 'line_blank'\\n })\\n }\\n\\n if (directors) {\\n miss.d.push({\\n title: '导演',\\n url: miss.empty,\\n col_type: 'text_center_1',\\n extra: {lineVisible: false},\\n })\\n let directors_title = pdfh(directors, 'a&&Text')\\n miss.d.push({\\n title: directors_title,\\n url: $(pdfh(directors, 'a&&href')+'?page=fypage#noHistory#').rule((directors_title) => {\\n const miss = $.require('hiker://page/miss')\\n setPageTitle(directors_title)\\n miss.tagsParse(MY_URL)\\n setResult(miss.d)\\n }, directors_title),\\n col_type: 'flex_button'\\n })\\n miss.d.push({\\n col_type: 'line_blank'\\n })\\n }\\n\\n if (labelsList) {\\n miss.d.push({\\n title: '类型',\\n url: miss.empty,\\n col_type: 'text_center_1',\\n extra: {lineVisible: false},\\n })\\n labelsList.forEach(label => {\\n let label_title = pdfh(label, 'a&&Text')\\n miss.d.push({\\n title: label_title,\\n url: $(pdfh(label, 'a&&href')+'?page=fypage#noHistory#').rule((label_title) => {\\n const miss = $.require('hiker://page/miss')\\n setPageTitle(label_title)\\n miss.tagsParse(MY_URL)\\n setResult(miss.d)\\n }, label_title),\\n col_type: 'flex_button'\\n })\\n })\\n\\n miss.d.push({\\n col_type: 'line_blank'\\n })\\n }\\n\\n const videoList = pdfa(html, '.grid.grid-cols-2.gap-5,0&&.thumbnail').concat(pdfa(html, '.grid.grid-cols-2.gap-5,1&&.thumbnail'))\\n\\n miss.d.push({\\n title: '推荐视频',\\n url: miss.empty,\\n col_type: 'text_center_1',\\n extra: {lineVisible: false},\\n })\\n videoList.forEach(item => {\\n miss.d.push({\\n title: pdfh(item, '.lozad&&alt'),\\n url: $(pdfh(item, 'a&&href')+'#noHistory#').rule(() => {\\n const miss = $.require('hiker://page/miss')\\n miss.videoParse(MY_URL)\\n setResult(miss.d)\\n if (miss.taskList.length > 0) {\\n be(miss.taskList)\\n }\\n }),\\n pic_url: pdfh(item, '.lozad&&data-src')+'@Referer='+miss.url,\\n desc: pdfh(item, '.absolute&&Text'),\\n col_type: 'movie_2'\\n })\\n })\\n },\\n avatarParse: (url) => {\\n const html = fetch(url, {headers:{'User-Agent': 'Mozilla/5.0 (Windows NT 10.0)'}})\\n miss.videoType(html)\\n },\\n tagsParse: (url) => {\\n const html = fetch(url, {headers:{'User-Agent': 'Mozilla/5.0 (Windows NT 10.0)'}})\\n miss.videoType(html)\\n },\\n videoType: (html) => {\\n const list = pdfa(html, '.grid&&.relative')\\n list.forEach(item => {\\n miss.d.push({\\n title: pdfh(item, '.lozad&&alt'),\\n url: $(pdfh(item, 'a&&href')+'#noHistory#').rule(() => {\\n const miss = $.require('hiker://page/miss')\\n miss.videoParse(MY_URL)\\n setResult(miss.d)\\n if (miss.taskList.length > 0) {\\n be(miss.taskList)\\n }\\n }),\\n pic_url: pdfh(item, '.lozad&&data-src')+'@Referer='+miss.url,\\n desc: pdfh(item, '.absolute&&Text'),\\n col_type: 'movie_2'\\n })\\n })\\n },\\n articlesType: (html) => {\\n const list = pdfa(html, '.grid&&.rounded-lg')\\n list.forEach(item => {\\n miss.d.push({\\n title: pdfh(item, 'img&&alt'),\\n url: $(pdfh(item, 'a&&href')+'#noHistory#').rule(() => {\\n const miss = $.require('hiker://page/miss')\\n const html = fetch(MY_URL, {headers:{'User-Agent': 'Mozilla/5.0 (Windows NT 10.0)'}})\\n\\n miss.d.push({\\n title: pdfh(html, 'article&&Html'),\\n col_type: 'rich_text'\\n })\\n\\n setResult(miss.d)\\n }),\\n pic_url: pdfh(item, 'img&&data-src')+'@Referer='+miss.url,\\n col_type: 'movie_2'\\n })\\n })\\n },\\n avatarType: (html) => {\\n const list = pdfa(html, 'ul&&li')\\n list.forEach(item => {\\n miss.d.push({\\n title: pdfh(item, 'h4&&Text'),\\n url: $(pdfh(item, 'a&&href')+'?page=fypage#noHistory#').rule(() => {\\n const miss = $.require('hiker://page/miss')\\n miss.avatarParse(MY_URL)\\n setResult(miss.d)\\n }),\\n pic_url: pdfh(item, 'img&&src')+'@Referer='+miss.url,\\n col_type: 'icon_round_4'\\n })\\n })\\n },\\n tagsType: (html) => {\\n const list = pdfa(html, '.gap-4&&div')\\n list.forEach(item => {\\n miss.d.push({\\n title: pdfh(item, 'a&&Text'),\\n url: $(pdfh(item, 'a&&href')+'?page=fypage#noHistory#').rule(() => {\\n const miss = $.require('hiker://page/miss')\\n miss.tagsParse(MY_URL)\\n setResult(miss.d)\\n }),\\n col_type: 'text_4'\\n })\\n })\\n },\\n updateAvatar: (param) => {\\n const actressesHtml = fetch(param.url, {headers:{'User-Agent': 'Mozilla/5.0 (Windows NT 10.0)'}})\\n\\n updateItem({\\n pic_url: pdfh(actressesHtml, '.object-cover.object-top.w-full.h-full&&src'),\\n col_type: 'avatar',\\n extra: {\\n id: param.index\\n }\\n })\\n },\\n}\\n\\n$.exports = miss\\n\"}]",
|
||
"icon": "https://static.missav888.com/img/favicon.png",
|
||
"proxy": ""
|
||
},
|
||
{
|
||
"last_chapter_rule": "",
|
||
"title": "JavTree",
|
||
"author": "TyrantGenesis",
|
||
"url": "hiker://empty##fypage",
|
||
"version": 1,
|
||
"col_type": "movie_3",
|
||
"class_name": "",
|
||
"type": "video",
|
||
"class_url": "",
|
||
"area_name": "",
|
||
"area_url": "",
|
||
"sort_name": "",
|
||
"year_name": "",
|
||
"sort_url": "",
|
||
"year_url": "",
|
||
"find_rule": "js:\n let d = [];\n const [empty, page] = MY_URL.split('##')\n\n const className = getMyVar('JavTree.tyrantgenesis.className', 'last')\n let url = getMyVar('JavTree.tyrantgenesis.url', 'https://javtree.com/last.html')\n url = url.replace('.html', '-'+page+'.html')\n\n if (parseInt(page) === 1) {\n d.push(\n {\n title: className === 'last' ? '““””<b><span style=\"color: #1cb96f\">最新更新</span></b>' : '最新更新',\n url: $(empty).lazyRule(() => {\n putMyVar('JavTree.tyrantgenesis.className', 'last')\n putMyVar('JavTree.tyrantgenesis.url', 'https://javtree.com/last.html')\n refreshPage(true)\n return \"hiker://empty\"\n }),\n col_type: 'scroll_button',\n },\n {\n title: className === 'category' ? '““””<b><span style=\"color: #1cb96f\">主題選片</span></b>' : '主題選片',\n url: $(empty).lazyRule(() => {\n putMyVar('JavTree.tyrantgenesis.className', 'category')\n putMyVar('JavTree.tyrantgenesis.url', 'https://javtree.com/last.html')\n refreshPage(false)\n return \"hiker://empty\"\n }),\n col_type: 'scroll_button',\n },\n {\n col_type:\"blank_block\"\n },\n )\n\n if (className === 'category') {\n const tags_html = fetch('https://javtree.com/tags.html')\n const tags = pdfa(tags_html, '.gm-main&&.gm-genre')\n tags.forEach(tag => {\n let list = pdfa(tag, '.list&&li')\n d.push({\n title: pdfh(tag, '.title&&Text')+':',\n url: empty,\n col_type: 'scroll_button',\n })\n list.forEach(item => {\n let url = 'https://javtree.com'+pdfh(item, 'a&&href')\n d.push({\n title: pdfh(item, 'a&&Text').replace('#', ''),\n url: $(url).lazyRule(() => {\n putMyVar('JavTree.tyrantgenesis.className', 'category')\n putMyVar('JavTree.tyrantgenesis.url', input)\n refreshPage(true)\n return \"hiker://empty\"\n }),\n col_type: 'scroll_button',\n })\n })\n d.push({\n col_type:\"blank_block\"\n })\n })\n }\n }\n\n const html = fetch(url)\n const list = pdfa(html, '.gm-list&&.item')\n\n list.forEach(item => {\n let pic_url = pdfh(item, 'img&&data-src')\n let url = 'https://javtree.com'+pdfh(item, '.title&&href')\n d.push({\n title: pdfh(item, '.info&&.title&&Text'),\n desc: pdfh(item, '.volume&&Text'),\n pic_url: pic_url.startsWith('http') ? pic_url : 'https:'+pic_url,\n url: $(url).lazyRule(() => {\n const html = fetch(input)\n const video_source_json = html.match(/var post = (.*?);/)[1]\n const video_source = JSON.parse(video_source_json).vods\n\n return JSON.stringify({urls: video_source.map(item => item.source), names: video_source.map(item => item.name)})\n }),\n col_type: 'movie_2',\n })\n })\n\n setResult(d);",
|
||
"search_url": "",
|
||
"group": "TyrantG",
|
||
"searchFind": "",
|
||
"detail_col_type": "movie_1",
|
||
"detail_find_rule": "",
|
||
"sdetail_col_type": "movie_1",
|
||
"sdetail_find_rule": "",
|
||
"ua": "pc",
|
||
"preRule": "",
|
||
"pages": "[]",
|
||
"icon": "https://s0.javtree.com/2/img/favicon.ico",
|
||
"proxy": ""
|
||
},
|
||
{
|
||
"last_chapter_rule": "",
|
||
"title": "Hsex.Tv",
|
||
"author": "TyrantGenesis",
|
||
"url": "https://hsex.icu/fyclass-fypage.htm?sort=fysort",
|
||
"version": 1,
|
||
"col_type": "movie_2",
|
||
"class_name": "视频&周榜&月榜&5分钟+&10分钟+",
|
||
"type": "video",
|
||
"class_url": "list&top7_list&top_list&5min_list&long_list",
|
||
"area_name": "",
|
||
"area_url": "",
|
||
"sort_name": "最热&最新",
|
||
"year_name": "",
|
||
"sort_url": "hot&new",
|
||
"year_url": "",
|
||
"find_rule": ".body&&.thumbnail;\n.image&&title;\n.image&&style.js:input.match(/url\\('(.*?)'\\)/)[1];\n.duration&&Text;\na&&href.js:input+`@lazyRule=.js:fetch(input).match(/source src=\"(.*?)\" type/)[1]`",
|
||
"search_url": "https://hsex.icu/search-fypage.htm?search=**",
|
||
"group": "TyrantG",
|
||
"searchFind": ".body&&.thumbnail;\n.image&&title;\na&&href.js:input+`@lazyRule=.js:fetch(input).match(/source src=\"(.*?)\" type/)[1]`;\n.duration&&Text;\n.info&&Text;\n.image&&style.js:input.match(/url\\('(.*?)'\\)/)[1]",
|
||
"detail_col_type": "movie_1",
|
||
"detail_find_rule": "",
|
||
"sdetail_col_type": "movie_1",
|
||
"sdetail_find_rule": "",
|
||
"ua": "mobile",
|
||
"preRule": "",
|
||
"pages": "[]",
|
||
"icon": "http://hsex.icu/static/img/favicon.ico",
|
||
"proxy": ""
|
||
},
|
||
{
|
||
"last_chapter_rule": "",
|
||
"title": "水果派",
|
||
"author": "TyrantGenesis",
|
||
"url": "https://api.f03d9.info/fyAll?limit=12&page=fypage",
|
||
"version": 2,
|
||
"col_type": "movie_2",
|
||
"class_name": "主播&视频",
|
||
"type": "video",
|
||
"class_url": "anchor&library",
|
||
"area_name": "",
|
||
"area_url": "",
|
||
"sort_name": "",
|
||
"year_name": "",
|
||
"sort_url": "",
|
||
"year_url": "",
|
||
"find_rule": "js:\nlet d = [];\nconst list_json = fetch(MY_URL);\nconst list = JSON.parse(list_json).data.data\nconst cdn = JSON.parse(list_json).cdn\n\nif (MY_URL.includes('library')) {\n list.forEach(item => {\n d.push({\n title: item.title,\n desc: item.subtitle,\n pic_url: cdn.image+item.img_url,\n url: $(\"http://www.shuiguopai.com/play-details/1/\"+item.id).lazyRule(_ => {\n const html = fetch(input)\n\t\tlog(input)\n return (html.match(/url:\"(.*?)index.m3u8\"/)[1]).replace(/\\\\u002F/g, '/')+\"index.m3u8\"\n }),\n col_type: 'movie_2'\n })\n })\n} else {\n list.forEach(item => {\n item.cdn = cdn\n d.push({\n title: item.name,\n desc: item.library_count+'部作品',\n pic_url: cdn.image+item.img,\n url: $(\"hiker://empty##fypage\").rule(item => {\n let d = [];\n const params = {\n \"anchors_id\": item.id,\n \"hm\": \"008-api\",\n \"length\": 12,\n \"page\": MY_URL.split('##')[1],\n }\n const headers = {\n 'Content-Type': 'application/json',\n 'Referer': 'http://shuiguopai.com/',\n 'User-Agent': MOBILE_UA\n }\n const data_json = fetch(\"https://api.cbbee0.com/v1_2/anchorsDetail\", {headers: headers, method:'POST', body: JSON.stringify(params)})\n log(data_json)\n const list = JSON.parse(data_json).data.list\n const cdn = item.cdn\n list.forEach(res => {\n d.push({\n title: res.title,\n desc: res.subtitle,\n pic_url: res.img_url,\n url: $(\"https://www.shuiguopai.com/play-details/1/\"+res.library_id+\"/\").lazyRule(_ => {\n const html = fetch(input)\n return (html.match(/url:\"(.*?)index.m3u8\"/)[1]).replace(/\\\\u002F/g, '/')+\"index.m3u8\"\n }),\n col_type: 'movie_2'\n })\n })\n setResult(d);\n }, item),\n col_type: 'icon_round_4'\n })\n })\n}\n\nsetResult(d);",
|
||
"search_url": "",
|
||
"group": "TyrantG",
|
||
"searchFind": "",
|
||
"detail_col_type": "movie_1",
|
||
"detail_find_rule": "",
|
||
"sdetail_col_type": "movie_1",
|
||
"sdetail_find_rule": "",
|
||
"ua": "pc",
|
||
"preRule": "",
|
||
"pages": "[]",
|
||
"icon": "http://www.shuiguopai.com/apple-touch-icon.jpg",
|
||
"proxy": ""
|
||
},
|
||
{
|
||
"last_chapter_rule": "",
|
||
"title": "spankbang",
|
||
"author": "TyrantGenesis",
|
||
"url": "https://spankbang.com/fyclass/fypage/",
|
||
"version": 2,
|
||
"col_type": "movie_3",
|
||
"class_name": "最新&热门&最受欢迎",
|
||
"type": "video",
|
||
"class_url": "new_videos&trending_videos&most_popular",
|
||
"area_name": "",
|
||
"area_url": "",
|
||
"sort_name": "",
|
||
"year_name": "",
|
||
"sort_url": "",
|
||
"year_url": "",
|
||
"find_rule": "js:\neval(fetch('hiker://files/TyrantG/GHS/spankbang.js'))\nbaseParse()",
|
||
"search_url": "https://spankbang.com/s/**/fypage/",
|
||
"group": "TyrantG",
|
||
"searchFind": "js:\neval(fetch('hiker://files/TyrantG/GHS/spankbang.js'))\nsearchParse()",
|
||
"detail_col_type": "movie_1",
|
||
"detail_find_rule": "js:\neval(fetch('hiker://files/TyrantG/GHS/spankbang.js'))\nsecParse()",
|
||
"sdetail_col_type": "movie_1",
|
||
"sdetail_find_rule": "js:\neval(fetch('hiker://files/TyrantG/GHS/spankbang.js'))\nsecParse()",
|
||
"ua": "mobile",
|
||
"preRule": "eval(fetch(\"https://git.tyrantg.com/tyrantgenesis/hikerViewRules/raw/master/God_Plan.js\"))\nspankbang()",
|
||
"pages": "[]",
|
||
"icon": "https://spankbang.com/static/desktop/Images/icons/v3/apple-touch-icon.png"
|
||
},
|
||
{
|
||
"last_chapter_rule": "",
|
||
"title": "ohentai",
|
||
"author": "TyrantGenesis",
|
||
"url": "https://ohentai.org/alltags.php",
|
||
"version": 1,
|
||
"col_type": "text_2",
|
||
"class_name": "",
|
||
"type": "video",
|
||
"class_url": "",
|
||
"area_name": "",
|
||
"area_url": "",
|
||
"sort_name": "",
|
||
"year_name": "",
|
||
"sort_url": "",
|
||
"year_url": "",
|
||
"find_rule": "js:\neval(fetch('hiker://files/TyrantG/GHS/ohentai.js'))\nbaseParse()",
|
||
"search_url": "https://ohentai.org/search.php?k=**&p=fypage",
|
||
"group": "TyrantG",
|
||
"searchFind": "js:\neval(fetch('hiker://files/TyrantG/GHS/ohentai.js'))\nsecParse()",
|
||
"detail_col_type": "movie_1",
|
||
"detail_find_rule": "js:\neval(fetch('hiker://files/TyrantG/GHS/ohentai.js'))\nsecParse()",
|
||
"sdetail_col_type": "movie_1",
|
||
"sdetail_find_rule": "",
|
||
"ua": "pc",
|
||
"preRule": "eval(fetch(\"https://git.tyrantg.com/tyrantgenesis/hikerViewRules/raw/master/God_Plan.js\"))\nohentai()",
|
||
"pages": "[]",
|
||
"icon": "https://ohentai.org/img/favicon/apple-icon-180x180.png",
|
||
"proxy": ""
|
||
},
|
||
{
|
||
"last_chapter_rule": "",
|
||
"title": "NSFW Rule 34",
|
||
"author": "TyrantGenesis",
|
||
"url": "https://nsfwr34.com/fyclass/?orderby=fyarea&order=fysort&page=fypage",
|
||
"version": 1,
|
||
"col_type": "movie_2",
|
||
"class_name": "4K&竖屏&FUTA&Overwatch&Fortnite Rule 34&Final Fantasy&Cyberpunk 2077&Tomb Raider&Dead or Alive&League of legends&Genshin impact&The Witcher&Resident Evil&Nier Automata&Apex Legends&Elden Ring",
|
||
"type": "video",
|
||
"class_url": "categories/4k&categories/vertical-videos&video_tag/futa&video_tag/overwatch-porn&video_tag/fortnite-rule-34&video_tag/final-fantasy&video_tag/cyberpunk2077-porn&video_tag/tomb-raider-porn&video_tag/dead-or-alive-porn&video_tag/league-of-legends-porn&video_tag/genshin-impact-porn&video_tag/the-witcher-porn&video_tag/resident-evil-porn&video_tag/nier-automata-porn&video_tag/apex-legends-porn&video_tag/elden-ring-porn",
|
||
"area_name": "最新&观看量&喜爱&标题&评论数",
|
||
"area_url": "date&post_view&post_like&title&comment_count",
|
||
"sort_name": "倒序&正序",
|
||
"year_name": "",
|
||
"sort_url": "DESC&ASC",
|
||
"year_url": "",
|
||
"find_rule": ".post-grid&&.post-body;\n.post-meta&&a&&Text;\nimg&&src;\n.video-length&&Text;\na&&href.js:input+`@lazyRule=.js:fetch(input).match(/m3u8/) ? fetch(input).match(/src.*?(https.*?playlist.m3u8)/)[1] : fetch(fetch(input).match(/iframe src=\"(.*?)\" loading/)[1]).match(/source type.*src=\"(.*?)\"/)[1]`",
|
||
"search_url": "https://nsfwr34.com/?post_type=video&s=**&search=&search_filter=post_types&page=fypage",
|
||
"group": "TyrantG",
|
||
"searchFind": ".post-grid&&.post-body;\n.post-meta&&a&&Text;\na&&href.js:input+`@lazyRule=.js:fetch(input).match(/m3u8/) ? fetch(input).match(/src.*?(https.*?playlist.m3u8)/)[1] : fetch(fetch(input).match(/iframe src=\"(.*?)\" loading/)[1]).match(/source type.*src=\"(.*?)\"/)[1]`;\n.video-length&&Text;\n.post-meta__date&&Text;\nimg&&src;",
|
||
"detail_col_type": "movie_1",
|
||
"detail_find_rule": "",
|
||
"sdetail_col_type": "movie_1",
|
||
"sdetail_find_rule": "",
|
||
"ua": "mobile",
|
||
"preRule": "",
|
||
"pages": "[]",
|
||
"icon": "https://nsfwr34.com/wp-content/uploads/2022/01/cropped-1f51e-150x150.png",
|
||
"proxy": ""
|
||
},
|
||
{
|
||
"last_chapter_rule": "",
|
||
"title": "哔咔漫画",
|
||
"author": "TyrantGenesis",
|
||
"url": "hiker://empty$$fypage",
|
||
"version": 5,
|
||
"col_type": "movie_3",
|
||
"class_name": "",
|
||
"type": "cartoon",
|
||
"class_url": "",
|
||
"area_name": "",
|
||
"area_url": "",
|
||
"sort_name": "",
|
||
"year_name": "",
|
||
"sort_url": "",
|
||
"year_url": "",
|
||
"find_rule": "js:\n$.require('hiker://page/picacg').baseParse();",
|
||
"search_url": "",
|
||
"group": "TyrantG",
|
||
"searchFind": "",
|
||
"detail_col_type": "movie_1",
|
||
"detail_find_rule": "",
|
||
"sdetail_col_type": "movie_1",
|
||
"sdetail_find_rule": "",
|
||
"ua": "pc",
|
||
"preRule": "",
|
||
"pages": "[{\"col_type\":\"movie_3\",\"name\":\"picacg\",\"path\":\"picacg\",\"rule\":\"const picacg = {\\n // BaseUrl: \\\"https://picaapi.picacomic.com/\\\",\\n // cdnUrl: \\\"https://storage.wikawika.xyz/\\\",\\n // cdnUrl: \\\"https://storage-b.diwodiwo.xyz/\\\",\\n cdnUrl: \\\"https://s3.picacomic.com\\\",\\n BaseUrl: \\\"http://172.67.7.24/\\\",\\n empty: 'hiker://empty',\\n picacg_path: \\\"hiker://files/rules/js/TyrantGenesis_哔咔设置.js\\\",\\n searchHistory: \\\"hiker://files/rules/js/TyrantGenesis_哔咔搜索历史.js\\\",\\n apiKey: \\\"C69BAF41DA5ABD1FFEDC6D2FEA56B\\\",\\n nonce: \\\"b1ab87b4800d4d4590a11701b8551afa\\\",\\n secretKey: \\\"~d}$Q7$eIni=V)9\\\\\\\\RK/P.RM4;9[7|@/CA}b~OW!3?EV`:<>M7pddUBL5n|0/*Cn\\\",\\n d: [],\\n data: {\\n rankTT: getItem('rankTT', 'H24'),\\n sort: getItem('sort', 'ua'),\\n searchValue: getItem('searchValue', ''),\\n searchHistoryShowStatus: getItem('searchHistoryShowStatus', '0'),\\n infoTab: getItem('infoTab', '1'),\\n infoReverse: getItem('infoReverse', '1'),\\n },\\n share_account: {\\n name: 'hiker_share',\\n passwd: 'hiker_share_12345678'\\n },\\n defaultConfig: {\\n searchHistoryMax: 100,\\n searchHistoryShowLimit: 20,\\n },\\n images: [],\\n episodes: [],\\n headers: {\\n \\\"accept\\\": \\\"application/vnd.picacomic.com.v1+json\\\",\\n \\\"app-channel\\\": \\\"2\\\",\\n \\\"time\\\": (new Date().getTime()/1000).toFixed(0),\\n \\\"app-version\\\": \\\"2.2.1.2.3.3\\\",\\n \\\"app-uuid\\\": \\\"defaultUuid\\\",\\n \\\"app-platform\\\": \\\"android\\\",\\n \\\"app-build-version\\\": \\\"44\\\",\\n \\\"Content-Type\\\": \\\"application/json; charset=UTF-8\\\",\\n \\\"User-Agent\\\": \\\"okhttp/3.8.1\\\",\\n \\\"image-quality\\\": \\\"original\\\",\\n \\\"Host\\\": \\\"picaapi.picacomic.com\\\",\\n },\\n encrypt: (url, ts, method) => {\\n eval(getCryptoJS())\\n let raw = url.replace(picacg.BaseUrl, \\\"\\\") + ts + picacg.nonce + method + picacg.apiKey\\n raw = raw.toLocaleLowerCase()\\n return CryptoJS.HmacSHA256(raw, picacg.secretKey).toString(CryptoJS.enc.Hex)\\n },\\n httpRequest: (path, method, data) => {\\n let responseJson\\n const request_url = picacg.BaseUrl + path\\n let headers = picacg.headers\\n headers['api-key'] = picacg.apiKey\\n headers.nonce = picacg.nonce\\n headers.signature = picacg.encrypt(request_url, headers.time, method)\\n try {\\n if (fileExist(picacg.picacg_path)) headers.authorization = fetch(picacg.picacg_path).split('\\\\n')[2]\\n } catch (e) {\\n writeFile(picacg.picacg_path, '')\\n toast('账号异常,请重新登录')\\n refreshPage(false)\\n }\\n\\n responseJson = method === 'GET' ? fetch(request_url, {headers: headers}) : fetch(request_url, {headers: headers, method: method, body: data})\\n\\n const response = JSON.parse(responseJson)\\n\\n // 自动登录\\n if (response.code === 401 && response.error === '1005') {\\n let email, password\\n try {\\n if (fileExist(picacg.picacg_path)) {\\n email = fetch(picacg.picacg_path).split('\\\\n')[0]\\n password = fetch(picacg.picacg_path).split('\\\\n')[1]\\n }\\n } catch (e) {\\n writeFile(picacg.picacg_path, '')\\n toast('账号异常,请重新登录')\\n refreshPage(true)\\n }\\n if (! email || ! password) {\\n writeFile(picacg.picacg_path, '')\\n toast('账号异常,请重新登录')\\n refreshPage(true)\\n } else {\\n const autoLoginResponse = picacg.post('auth/sign-in', {\\n email: email,\\n password: password,\\n })\\n if (autoLoginResponse.code === 400) {\\n return 'toast://'+ (autoLoginResponse.detail || autoLoginResponse.message)\\n } else {\\n const setting = email + '\\\\n' + password + '\\\\n' +autoLoginResponse.data.token\\n writeFile(picacg.picacg_path, setting)\\n refreshPage(true)\\n }\\n }\\n }\\n return response\\n },\\n get: path => picacg.httpRequest(path, 'GET', ''),\\n post: (path, data) => picacg.httpRequest(path, 'POST', data),\\n baseParse: () => {\\n if (! fileExist(picacg.picacg_path) || ! fetch(picacg.picacg_path)) {\\n picacg.d.push({\\n title: '登录哔咔',\\n url: $(picacg.empty).rule(() => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.login()\\n setResult(picacg.d);\\n }),\\n col_type: 'text_center_1'\\n })\\n picacg.d.push({\\n title: '注册哔咔',\\n url: $(picacg.empty).rule(() => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.register()\\n setResult(picacg.d);\\n }),\\n col_type: 'text_center_1'\\n })\\n picacg.d.push({\\n title: '共享账号登录',\\n url: $(picacg.empty).lazyRule(() => {\\n const picacg = $.require('hiker://page/picacg')\\n return picacg.shareLogin()\\n }),\\n col_type: 'text_center_1'\\n })\\n } else {\\n try {\\n const userInfo = picacg.get('users/profile').data.user\\n\\n picacg.d.push({\\n title: '用户『'+userInfo.name+'』 # 个人中心',\\n pic_url: 'https://git.tyrantg.com/tyrantgenesis/hikerViewRules/raw/master/assets/images/pica.jpg',\\n url: $(picacg.empty).rule(() => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.settingPage()\\n setResult(picacg.d)\\n }),\\n col_type: 'avatar',\\n })\\n } catch (e) {}\\n\\n picacg.d.push({\\n url: $(picacg.empty+\\\"#fullTheme#$$fypage\\\").rule(() => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.getSearch()\\n setResult(picacg.d)\\n }),\\n title: '请输入关键词',\\n col_type: \\\"icon_1_search\\\",\\n })\\n picacg.d.push({\\n title: '排行榜',\\n url: $(picacg.empty+\\\"#fullTheme#\\\").rule(() => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.getRanking()\\n setResult(picacg.d)\\n }),\\n col_type: 'text_3',\\n })\\n picacg.d.push({\\n title: '随机本子',\\n url: $(picacg.empty+\\\"#fullTheme#$$fypage\\\").rule(() => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.getRandom()\\n setResult(picacg.d)\\n }),\\n col_type: 'text_3',\\n })\\n picacg.d.push({\\n title: '我的收藏',\\n url: $(picacg.empty+\\\"#fullTheme#$$fypage\\\").rule(() => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.getFavourite()\\n setResult(picacg.d)\\n }),\\n col_type: 'text_3',\\n })\\n picacg.d.push({\\n col_type: 'line_blank'\\n })\\n picacg.getCategories()\\n }\\n\\n setResult(picacg.d);\\n },\\n login: () => {\\n picacg.d.push({\\n desc: '请输入用户名',\\n col_type: 'input',\\n extra: {\\n titleVisible: false,\\n onChange: $.toString(() => {\\n if (input) setItem('email', input)\\n })\\n }\\n })\\n picacg.d.push({\\n desc: '请输入密码',\\n col_type: 'input',\\n extra: {\\n titleVisible: false,\\n onChange: $.toString(() => {\\n if (input) setItem('password', input)\\n })\\n }\\n })\\n picacg.d.push({\\n title: '登录',\\n url: $(picacg.empty).lazyRule(() => {\\n const picacg = $.require('hiker://page/picacg')\\n const response = picacg.post('auth/sign-in', {\\n email: getItem('email', ''),\\n password: getItem('password', ''),\\n })\\n if (response.code === 400) {\\n return 'toast://'+ (response.detail || response.message)\\n } else {\\n const setting = getItem('email', '') + '\\\\n' + getItem('password', '') + '\\\\n' +response.data.token\\n writeFile(picacg.picacg_path, setting)\\n toast('登录成功')\\n back(true)\\n return picacg.empty\\n }\\n }),\\n col_type: 'text_center_1',\\n extra: {\\n lineVisible: false,\\n }\\n })\\n\\n },\\n shareLogin: () => {\\n const response = picacg.post('auth/sign-in', {\\n email: picacg.share_account.name,\\n password: picacg.share_account.passwd,\\n })\\n if (response.code === 400 || response.code === 401) {\\n return 'toast://'+ (response.detail || response.message)\\n } else {\\n const setting = getItem('email', '') + '\\\\n' + getItem('password', '') + '\\\\n' +response.data.token\\n writeFile(picacg.picacg_path, setting)\\n refreshPage(false)\\n return \\\"toast://登录成功\\\"\\n }\\n },\\n register: () => {\\n picacg.d.push({\\n desc: '请输入昵称',\\n col_type: 'input',\\n extra: {\\n titleVisible: false,\\n onChange: $.toString(() => {\\n if (input) setItem('name', input)\\n })\\n }\\n })\\n picacg.d.push({\\n desc: '请输入用户名',\\n col_type: 'input',\\n extra: {\\n titleVisible: false,\\n onChange: $.toString(() => {\\n if (input) setItem('email', input)\\n })\\n }\\n })\\n picacg.d.push({\\n desc: '请输入密码',\\n col_type: 'input',\\n extra: {\\n titleVisible: false,\\n onChange: $.toString(() => {\\n if (input) setItem('password', input)\\n })\\n }\\n })\\n picacg.d.push({\\n title: '注册',\\n url: $(picacg.empty).lazyRule(() => {\\n const picacg = $.require('hiker://page/picacg')\\n const response = picacg.post('auth/register', {\\n email: getItem('email', ''),\\n password: getItem('password', ''),\\n name: getItem('name', ''),\\n birthday: '1970-01-01',\\n gender: 'f',\\n question1: 'question1',\\n question2: 'question2',\\n question3: 'question3',\\n answer1: 'answer1',\\n answer2: 'answer2',\\n answer3: 'answer3',\\n })\\n\\n if (response.code === 400) {\\n return 'toast://'+ (response.detail || response.message)\\n } else {\\n const loginResponse = picacg.post('auth/sign-in', {\\n email: getItem('email', ''),\\n password: getItem('password', ''),\\n })\\n const setting = getItem('email', '') + '\\\\n' + getItem('password', '') + '\\\\n' +loginResponse.data.token\\n writeFile(picacg.picacg_path, setting)\\n toast('注册成功,已自动登录')\\n back(true)\\n return picacg.empty\\n }\\n }),\\n col_type: 'text_center_1',\\n extra: {\\n lineVisible: false,\\n }\\n })\\n },\\n getSearch: () => {\\n addListener('onClose', $.toString(() => {\\n clearItem('sort')\\n clearItem('searchValue')\\n clearItem('searchHistoryShowStatus')\\n }))\\n\\n const page = MY_URL.split('$$')[1]\\n\\n if (parseInt(page) === 1) {\\n picacg.d.push({\\n title: '搜索',\\n url: $.toString(() => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.setSearchHistory(input)\\n setItem('searchValue', input)\\n refreshPage(false)\\n return \\\"hiker://empty\\\"\\n }),\\n desc: '请输入关键词',\\n col_type: 'input',\\n extra: {\\n defaultValue: picacg.data.searchValue,\\n onChange: $.toString(() => {\\n if (getItem('searchValue', '') && ! input) {\\n clearItem('searchValue')\\n clearItem('searchHistoryShowStatus')\\n refreshPage(false)\\n return \\\"hiker://empty\\\"\\n }\\n })\\n }\\n })\\n\\n if (! picacg.data.searchValue) {\\n if (fileExist(picacg.searchHistory) && fetch(picacg.searchHistory)) {\\n const searchHistory = fetch(picacg.searchHistory).split('||').filter(item => item)\\n picacg.d.push({\\n title: '搜索记录:',\\n url: picacg.empty,\\n col_type: 'text_1',\\n extra: {\\n lineVisible: false\\n },\\n })\\n\\n let picacgConfig = picacg.defaultConfig\\n searchHistory.forEach((history, index) => {\\n if (picacg.data.searchHistoryShowStatus === '1' || (picacg.data.searchHistoryShowStatus === '0' && picacgConfig.searchHistoryShowLimit - index >= 1)) {\\n picacg.d.push({\\n title: history,\\n url: $(picacg.empty).lazyRule(history => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.setSearchHistory(history)\\n setItem('searchValue', history)\\n refreshPage(false)\\n return \\\"hiker://empty\\\"\\n }, history),\\n col_type: 'flex_button'\\n })\\n }\\n })\\n\\n picacg.d.push({\\n title: picacg.data.searchHistoryShowStatus === '1' ? '折叠记录' : '展开记录',\\n url: $(picacg.empty).lazyRule(params => {\\n setItem('searchHistoryShowStatus', params.status ? '0' : '1')\\n refreshPage(true)\\n return \\\"hiker://empty\\\"\\n }, {\\n status: picacg.data.searchHistoryShowStatus === '1'\\n }),\\n col_type: 'text_2',\\n })\\n picacg.d.push({\\n title: '清除记录',\\n url: $(picacg.empty).lazyRule(params => {\\n writeFile(params.filename, '')\\n refreshPage(true)\\n return \\\"hiker://empty\\\"\\n }, {\\n filename: picacg.searchHistory\\n }),\\n col_type: 'text_2',\\n })\\n }\\n\\n const hot_data = picacg.get('keywords')\\n picacg.d.push({\\n col_type: 'line_blank'\\n })\\n picacg.d.push({\\n title: '热门搜索:',\\n url: picacg.empty,\\n col_type: 'text_1',\\n extra: {\\n lineVisible: false\\n },\\n })\\n hot_data.data.keywords.forEach(hot => {\\n picacg.d.push({\\n title: hot,\\n url: $(picacg.empty).lazyRule(hot => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.setSearchHistory(hot)\\n setItem('searchValue', hot)\\n refreshPage(false)\\n return \\\"hiker://empty\\\"\\n }, hot),\\n col_type: 'flex_button'\\n })\\n })\\n } else {\\n picacg.makeSort()\\n }\\n }\\n\\n picacg.getSearchResult(page, '')\\n },\\n getSearchResult: (page, value) => {\\n const searchValue = value ? value : picacg.data.searchValue\\n if (searchValue) {\\n const response = picacg.post('comics/advanced-search?page='+page, {\\n keyword: searchValue,\\n sort: picacg.data.sort,\\n })\\n response.data.comics.docs.forEach(comic => {\\n picacg.d.push({\\n title: comic.title,\\n desc: comic.author,\\n pic_url: /*comic.thumb.fileServer*/picacg.cdnUrl+'/static/'+comic.thumb.path,\\n url: $(picacg.empty+'#immersiveTheme##noHistory#$$fypage').rule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.getInfo(id)\\n setResult(picacg.d);\\n }, comic._id),\\n col_type: 'movie_3'\\n })\\n })\\n }\\n },\\n setSearchHistory: value => {\\n let picacgConfig = picacg.defaultConfig\\n let searchHistory = fetch(picacg.searchHistory).split('||').filter(item => item)\\n\\n if (searchHistory.includes(value)) {\\n for (let i in searchHistory) {\\n if (searchHistory[i] === value) {\\n searchHistory.splice(i, 1)\\n break\\n }\\n }\\n } else if (searchHistory.length >= picacgConfig.searchHistoryMax) {\\n searchHistory = searchHistory.slice(0, picacgConfig.searchHistoryMax - 1)\\n }\\n\\n searchHistory.unshift(value)\\n writeFile(picacg.searchHistory, searchHistory.join('||'))\\n },\\n getRanking: () => {\\n addListener('onClose', $.toString(() => {\\n clearItem('rankTT')\\n }))\\n const tabs = [\\n {title: '24小时', id: 'H24'},\\n {title: '7天', id: 'D7'},\\n {title: '30天', id: 'D30'},\\n ]\\n picacg.d.push({\\n title: '排行榜',\\n url: picacg.empty,\\n col_type: 'text_center_1',\\n extra: {\\n lineVisible: false\\n },\\n })\\n picacg.d.push({\\n col_type: 'line_blank'\\n })\\n tabs.forEach(item => {\\n picacg.d.push({\\n title: picacg.data.rankTT === item.id ? '‘‘’’<strong><font color=\\\"#ff1493\\\">'+item.title+'</font></strong>' : item.title,\\n url: $(picacg.empty).lazyRule((item) => {\\n setItem('rankTT', item.id)\\n refreshPage(false)\\n return 'hiker://empty'\\n }, item),\\n col_type: 'text_3',\\n })\\n })\\n picacg.d.push({\\n col_type: 'line_blank'\\n })\\n const response = picacg.get('comics/leaderboard?tt='+picacg.data.rankTT+'&ct=VC')\\n\\n response.data.comics.forEach(comic => {\\n picacg.d.push({\\n title: comic.title,\\n desc: comic.author,\\n pic_url: /*comic.thumb.fileServer*/picacg.cdnUrl+'/static/'+comic.thumb.path,\\n url: $(picacg.empty+'#immersiveTheme##noHistory#$$fypage').rule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.getInfo(id)\\n setResult(picacg.d);\\n }, comic._id),\\n col_type: 'movie_3'\\n })\\n })\\n },\\n getRandom: () => {\\n const page = MY_URL.split('$$')[1]\\n if (parseInt(page) === 1) {\\n picacg.d.push({\\n title: '随机本子',\\n url: picacg.empty,\\n col_type: 'text_center_1',\\n extra: {\\n lineVisible: false\\n },\\n })\\n picacg.d.push({\\n col_type: 'line_blank'\\n })\\n }\\n const response = picacg.get('comics/random?page='+page)\\n response.data.comics.forEach(comic => {\\n picacg.d.push({\\n title: comic.title,\\n desc: comic.author,\\n pic_url: /*comic.thumb.fileServer*/picacg.cdnUrl+'/static/'+comic.thumb.path,\\n url: $(picacg.empty+'#immersiveTheme##noHistory#$$fypage').rule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.getInfo(id)\\n setResult(picacg.d);\\n }, comic._id),\\n col_type: 'movie_3'\\n })\\n })\\n },\\n getFavourite: () => {\\n const page = MY_URL.split('$$')[1]\\n if (parseInt(page) === 1) {\\n picacg.d.push({\\n title: '我的收藏',\\n url: picacg.empty,\\n col_type: 'text_center_1',\\n extra: {\\n lineVisible: false\\n },\\n })\\n picacg.d.push({\\n col_type: 'line_blank'\\n })\\n }\\n const response = picacg.get('users/favourite?s=dd&page='+page)\\n response.data.comics.docs.forEach(comic => {\\n picacg.d.push({\\n title: comic.title,\\n desc: comic.author,\\n pic_url: /*comic.thumb.fileServer*/picacg.cdnUrl+'/static/'+comic.thumb.path,\\n url: $(picacg.empty+'#immersiveTheme##noHistory#$$fypage').rule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.getInfo(id)\\n setResult(picacg.d);\\n }, comic._id),\\n col_type: 'movie_3'\\n })\\n })\\n },\\n getCategories: () => {\\n const response = picacg.get('categories')\\n if (response.code === 200) {\\n const no_image = ['大家都在看', '那年今天', '官方都在看'];\\n response.data.categories.forEach((cate, index) => {\\n let pic = no_image.includes(cate.title) ? 'https://git.tyrantg.com/tyrantgenesis/hikerViewRules/raw/master/assets/images/pica.jpg' : /*cate.thumb.fileServer*/(picacg.cdnUrl+'/static/'+cate.thumb.path)\\n let desc = no_image.includes(cate.title) ? '0' : '5'\\n // let desc = '3'\\n if (!cate.isWeb) {\\n picacg.d.push({\\n title: cate.title,\\n desc: desc,\\n pic_url: pic,\\n url: $(picacg.empty+'#noHistory#$$fypage').rule((title) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.getComics(title)\\n setResult(picacg.d);\\n }, cate.title),\\n col_type: 'card_pic_3'\\n })\\n }\\n })\\n }\\n },\\n getComics: (title) => {\\n addListener('onClose', $.toString(() => {\\n clearItem('sort')\\n }))\\n const page = MY_URL.split('$$')[1]\\n if (parseInt(page) === 1) picacg.makeSort()\\n const response = picacg.get('comics?c='+encodeURIComponent(title)+'&page='+page+'&s='+picacg.data.sort)\\n if (response.code === 200) {\\n response.data.comics.docs.forEach((comic, index) => {\\n picacg.d.push({\\n title: comic.title,\\n desc: comic.author,\\n pic_url: /*comic.thumb.fileServer*/picacg.cdnUrl+'/static/'+comic.thumb.path,\\n url: $(picacg.empty+'#immersiveTheme##noHistory#$$fypage').rule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.getInfo(id)\\n setResult(picacg.d);\\n }, comic._id),\\n col_type: 'movie_3'\\n })\\n })\\n }\\n },\\n getEpisodesPicture: (id, page) => {\\n const episodesRes = picacg.get('comics/'+id+'/eps?page='+page)\\n if (episodesRes.code === 200 && episodesRes.data.eps.docs.length > 0) {\\n episodesRes.data.eps.docs.forEach((ep, index) => {\\n picacg.episodes.push({\\n title: ep.title,\\n url: ep.order,\\n })\\n })\\n page = page+1\\n picacg.getEpisodesPicture(id, page)\\n }\\n },\\n getInfo: (id) => {\\n addListener('onClose', $.toString(() => {\\n clearItem('infoTab')\\n clearItem('infoReverse')\\n }))\\n const page = MY_URL.split('$$')[1]\\n\\n if (parseInt(page) === 1) {\\n const response = picacg.get('comics/'+id)\\n if (! response.data) {\\n toast('漫画信息错误')\\n back(false)\\n }\\n\\n const info = response.data.comic\\n\\n setPageTitle(info.title)\\n\\n picacg.d.push({\\n title: info.title,\\n desc:\\n '✨ 分类:'+info.categories.join(' ')+'\\\\n'+\\n '❤️ 喜欢:'+info.likesCount+' 浏览:'+info.viewsCount+'\\\\n'+\\n ' 详情:'+info.description,\\n pic_url: /*info.thumb.fileServer*/picacg.cdnUrl+'/static/'+info.thumb.path,\\n url: $(picacg.empty).rule((description, image) => {\\n const picacg = $.require('hiker://page/picacg')\\n setPageTitle('本子详情')\\n picacg.d.push({\\n pic_url: image,\\n url: image,\\n col_type: 'pic_1_full'\\n })\\n picacg.d.push({\\n title: description,\\n col_type: 'long_text'\\n })\\n setResult(picacg.d)\\n }, info.description, /*info.thumb.fileServer*/picacg.cdnUrl+'/static/'+info.thumb.path),\\n col_type: 'movie_1_vertical_pic_blur'\\n })\\n\\n picacg.d.push({\\n col_type: 'line_blank'\\n })\\n\\n try {\\n picacg.d.push({\\n title: '作者:'+info.author,\\n pic_url: 'https://git.tyrantg.com/tyrantgenesis/hikerViewRules/raw/master/assets/images/pica.jpg',\\n url: $(picacg.empty+\\\"#fullTheme##noHistory#$$fypage\\\").rule((author) => {\\n addListener('onClose', $.toString(() => {\\n clearItem('sort')\\n clearItem('searchValue')\\n }))\\n const page = MY_URL.split('$$')[1]\\n const picacg = $.require('hiker://page/picacg')\\n picacg.setSearchHistory(author)\\n if (parseInt(page) === 1) {\\n picacg.d.push({\\n title: '标签搜索:‘‘’’<strong><font color=\\\"#ff1493\\\">'+author+'</font></strong>',\\n url: picacg.empty,\\n col_type: 'text_center_1',\\n extra: {\\n lineVisible: false\\n },\\n })\\n picacg.makeSort()\\n }\\n picacg.getSearchResult(page, author)\\n setResult(picacg.d)\\n }, info.author),\\n col_type: 'icon_2_round'\\n })\\n picacg.d.push({\\n title: '上传:'+info._creator.name,\\n pic_url: info._creator.avatar ? /*info._creator.avatar.fileServer*/(picacg.cdnUrl+'/static/'+info._creator.avatar.path) : 'https://git.tyrantg.com/tyrantgenesis/hikerViewRules/raw/master/assets/images/pica.jpg',\\n url: $(picacg.empty+\\\"#fullTheme##noHistory#$$fypage\\\").rule((name) => {\\n addListener('onClose', $.toString(() => {\\n clearItem('sort')\\n clearItem('searchValue')\\n }))\\n const page = MY_URL.split('$$')[1]\\n const picacg = $.require('hiker://page/picacg')\\n picacg.setSearchHistory(name)\\n if (parseInt(page) === 1) {\\n picacg.d.push({\\n title: '标签搜索:‘‘’’<strong><font color=\\\"#ff1493\\\">'+name+'</font></strong>',\\n url: picacg.empty,\\n col_type: 'text_center_1',\\n extra: {\\n lineVisible: false\\n },\\n })\\n picacg.makeSort()\\n }\\n picacg.getSearchResult(page, name)\\n setResult(picacg.d)\\n }, info._creator.name),\\n col_type: 'icon_2_round'\\n })\\n\\n if (info.tags.length > 0) {\\n info.tags.forEach(tag => {\\n picacg.d.push({\\n title: tag,\\n url: $(picacg.empty+\\\"#fullTheme##noHistory#$$fypage\\\").rule((tag) => {\\n addListener('onClose', $.toString(() => {\\n clearItem('sort')\\n clearItem('searchValue')\\n }))\\n const page = MY_URL.split('$$')[1]\\n const picacg = $.require('hiker://page/picacg')\\n picacg.setSearchHistory(tag)\\n if (parseInt(page) === 1) {\\n picacg.d.push({\\n title: '标签搜索:‘‘’’<strong><font color=\\\"#ff1493\\\">'+tag+'</font></strong>',\\n url: picacg.empty,\\n col_type: 'text_center_1',\\n extra: {\\n lineVisible: false\\n },\\n })\\n picacg.makeSort()\\n }\\n picacg.getSearchResult(page, tag)\\n setResult(picacg.d)\\n }, tag),\\n col_type: 'flex_button',\\n })\\n })\\n\\n picacg.d.push({\\n col_type: 'line'\\n })\\n }\\n } catch (e) {}\\n\\n // 递归获取选集\\n picacg.getEpisodesPicture(id, 1)\\n\\n picacg.d.push({\\n title: info.isFavourite ? '‘‘’’<strong><font color=\\\"red\\\">取消收藏</font></strong>' : '‘‘’’<strong><font color=\\\"#00bfff\\\">收藏</font></strong>',\\n url: $(picacg.empty).lazyRule((id, isFavourite) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.post('comics/'+id+'/favourite', {})\\n toast(isFavourite?'取消收藏':'收藏成功')\\n refreshPage(false)\\n return picacg.empty\\n }, id, info.isFavourite),\\n col_type: 'text_3'\\n })\\n\\n picacg.d.push({\\n title: info.isLiked ? '‘‘’’<strong><font color=\\\"red\\\">取消点赞</font></strong>' : '‘‘’’<strong><font color=\\\"#00bfff\\\">点赞</font></strong>',\\n url: $(picacg.empty).lazyRule((id, isLiked) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.post('comics/'+id+'/like', {})\\n toast(isLiked?'取消点赞':'点赞成功')\\n refreshPage(false)\\n return picacg.empty\\n }, id, info.isLiked),\\n col_type: 'text_3'\\n })\\n\\n picacg.d.push({\\n title: '‘‘’’<strong><font color=\\\"#ff1493\\\">下载</font></strong>',\\n url: \\\"hiker://page/download.view#noHistory##noRecordHistory##noRefresh#?rule=本地资源管理\\\",\\n extra: {\\n chapterList: picacg.episodes,\\n info:{\\n bookName: info.title,\\n ruleName: MY_RULE.title,\\n bookTopPic: /*info.thumb.fileServer*/picacg.cdnUrl+'/static/'+info.thumb.path,\\n parseCode: $.toString((id, ruleName) => {\\n const picacg = $.require('hiker://page/picacg?rule='+ruleName)\\n return picacg.getPicture(id, input)\\n }, id, MY_RULE.title)\\n },\\n defaultView:\\\"1\\\"\\n },\\n col_type: 'text_3',\\n })\\n\\n picacg.d.push({\\n col_type: 'line'\\n })\\n\\n const tabs = [\\n {title: '章节', id: '1'},\\n {title: '推荐', id: '2'},\\n {title: '看评论', id: '3'},\\n {title: '写评论', id: '4'},\\n ]\\n\\n tabs.forEach(tab => {\\n picacg.d.push({\\n title: picacg.data.infoTab === tab.id ? '‘‘’’<strong><font color=\\\"#ff1493\\\">'+tab.title+'</font></strong>' : tab.title,\\n url: $(picacg.empty).lazyRule((tab) => {\\n setItem('infoTab', tab.id)\\n refreshPage(false)\\n return 'hiker://empty'\\n }, tab),\\n col_type: 'text_4',\\n })\\n })\\n\\n switch (picacg.data.infoTab) {\\n case '1':\\n picacg.d.push({\\n title: picacg.data.infoReverse === '1' ? '当前排序:正序' : '当前排序:倒序',\\n url: $(picacg.empty).lazyRule((infoReverse) => {\\n setItem('infoReverse', infoReverse ? '2' : '1')\\n refreshPage(false)\\n return 'hiker://empty'\\n }, picacg.data.infoReverse === '1'),\\n col_type: 'text_center_1',\\n })\\n\\n const data = picacg.data.infoReverse === '1' ? picacg.episodes.reverse() : picacg.episodes\\n\\n data.forEach(ep => {\\n picacg.d.push({\\n title: ep.title,\\n url: $(picacg.empty).lazyRule((id, order) => {\\n const picacg = $.require('hiker://page/picacg')\\n return picacg.getPicture(id, order)\\n }, id, ep.url),\\n col_type: 'text_3'\\n })\\n })\\n break\\n case '2':\\n const recommendationResponse = picacg.get('comics/'+id+'/recommendation')\\n recommendationResponse.data.comics.forEach(comic => {\\n picacg.d.push({\\n title: comic.title,\\n desc: comic.author,\\n pic_url: /*comic.thumb.fileServer*/picacg.cdnUrl+'/static/'+comic.thumb.path,\\n url: $(picacg.empty+'#immersiveTheme##noHistory#$$fypage').rule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.getInfo(id)\\n setResult(picacg.d);\\n }, comic._id),\\n col_type: 'movie_3'\\n })\\n })\\n break\\n case '4':\\n picacg.d.push({\\n desc: '请输入评论',\\n col_type: 'input',\\n extra: {\\n type: 'textarea',\\n height: 5,\\n titleVisible: false,\\n onChange: $.toString(() => {\\n if (input) setItem('comment', input)\\n })\\n }\\n })\\n picacg.d.push({\\n title: '提交评论',\\n url: $(picacg.empty).lazyRule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n const comment = getItem('comment', '')\\n if (! comment) {\\n return 'toast://请填写评论'\\n } else {\\n const sendCommentResponse = picacg.post('comics/'+id+'/comments', {\\n content: comment\\n })\\n\\n if (sendCommentResponse.code === 200) {\\n setItem('infoTab', '3')\\n refreshPage(true)\\n return 'toast://评论成功'\\n } else {\\n return 'toast://'+(sendCommentResponse.message || sendCommentResponse.detail)\\n }\\n }\\n }, id),\\n col_type: 'text_center_1',\\n })\\n break\\n }\\n\\n }\\n\\n try {\\n if (picacg.data.infoTab === '3') {\\n const commentsResponse = picacg.get('comics/'+id+'/comments?page='+page)\\n commentsResponse.data.comments.docs.forEach(comment => {\\n let user = comment._user\\n if (user) {\\n picacg.d.push({\\n title: user.name,\\n pic_url: user.avatar ?/* user.avatar.fileServer*/(picacg.cdnUrl+'/static/'+user.avatar.path) : 'https://git.tyrantg.com/tyrantgenesis/hikerViewRules/raw/master/assets/images/pica.jpg',\\n url: picacg.empty,\\n col_type: 'avatar'\\n })\\n }\\n picacg.d.push({\\n title: comment.content+'<br />'+ '❤️ 喜欢:'+comment.likesCount+' 回复:'+comment.commentsCount,\\n col_type: 'rich_text'\\n })\\n picacg.d.push({\\n title: comment.isLiked ? '取消点赞' : '点赞',\\n url: $(picacg.empty).lazyRule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.post('comments/'+id+'/like', {})\\n refreshPage(false)\\n return 'toast://提交成功'\\n }, comment._id),\\n col_type: 'text_3',\\n })\\n picacg.d.push({\\n title: '看回复',\\n url: $(picacg.empty+'$$fypage').rule((id) => {\\n const page = MY_URL.split('$$')[1]\\n const picacg = $.require('hiker://page/picacg')\\n const response = picacg.get('comments/'+id+'/childrens?page='+page)\\n\\n response.data.comments.docs.forEach(comment => {\\n let user = comment._user\\n if (user) {\\n picacg.d.push({\\n title: user.name,\\n pic_url: user.avatar ? (/*user.avatar.fileServer*/picacg.cdnUrl+'/static/'+user.avatar.path) : 'https://git.tyrantg.com/tyrantgenesis/hikerViewRules/raw/master/assets/images/pica.jpg',\\n url: picacg.empty,\\n col_type: 'avatar'\\n })\\n }\\n picacg.d.push({\\n title: comment.content+'<br />'+ '❤️ 喜欢:'+comment.likesCount,\\n col_type: 'rich_text'\\n })\\n picacg.d.push({\\n title: comment.isLiked ? '取消点赞' : '点赞',\\n url: $(picacg.empty).lazyRule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.post('comments/'+id+'/like', {})\\n refreshPage(false)\\n return 'toast://提交成功'\\n }, comment._id),\\n col_type: 'text_center_1',\\n extra: {\\n lineVisible: false\\n },\\n })\\n picacg.d.push({\\n col_type: 'line',\\n })\\n })\\n\\n setResult(picacg.d);\\n }, comment._id),\\n col_type: 'text_3',\\n })\\n picacg.d.push({\\n title: '写回复',\\n url: $(picacg.empty).rule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.d.push({\\n desc: '请输入评论',\\n col_type: 'input',\\n extra: {\\n type: 'textarea',\\n height: 5,\\n titleVisible: false,\\n onChange: $.toString(() => {\\n if (input) setItem('comment', input)\\n })\\n }\\n })\\n picacg.d.push({\\n title: '提交评论',\\n url: $(picacg.empty).lazyRule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n const comment = getItem('comment', '')\\n if (! comment) {\\n return 'toast://请填写评论'\\n } else {\\n const sendCommentResponse = picacg.post('comments/'+id, {\\n content: comment\\n })\\n\\n if (sendCommentResponse.code === 200) {\\n back(false)\\n return 'toast://评论成功'\\n } else {\\n return 'toast://'+(sendCommentResponse.message || sendCommentResponse.detail)\\n }\\n }\\n }, id),\\n col_type: 'text_center_1',\\n })\\n setResult(picacg.d);\\n }, comment._id),\\n col_type: 'text_3',\\n })\\n /*picacg.d.push({\\n title: '举报',\\n url: $(picacg.empty).lazyRule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.post('comics/'+id+'/report', {})\\n return 'toast://提交成功'\\n }, id),\\n col_type: 'text_4',\\n })*/\\n picacg.d.push({\\n col_type: 'line',\\n })\\n })\\n }\\n } catch (e) {}\\n\\n },\\n getRecursionPicture: (id, order, page) => {\\n const response = picacg.get('comics/'+id+'/order/'+order+'/pages?page='+page)\\n if (response.code === 200 && response.data.pages.docs.length > 0) {\\n response.data.pages.docs.forEach((page, index) => {\\n picacg.images.push(/*page.media.fileServer*/picacg.cdnUrl+'/static/'+page.media.path)\\n })\\n page = page+1\\n picacg.getRecursionPicture(id, order, page)\\n }\\n },\\n getPicture: (id, order) => {\\n // 递归获取内容\\n picacg.getRecursionPicture(id, order, 1)\\n return 'pics://'+picacg.images.join('&&')\\n },\\n makeSort: () => {\\n const tabs = [\\n {title: '默认排序', id: 'ua'},\\n {title: '新到旧', id: 'dd'},\\n {title: '旧到新', id: 'da'},\\n {title: '最多爱心', id: 'ld'},\\n {title: '最多指名', id: 'vd'},\\n ];\\n\\n tabs.forEach(item => {\\n picacg.d.push({\\n title: picacg.data.sort === item.id ? '‘‘’’<strong><font color=\\\"#ff1493\\\">'+item.title+'</font></strong>' : item.title,\\n url: $(picacg.empty).lazyRule((item) => {\\n setItem('sort', item.id)\\n refreshPage(false)\\n return 'hiker://empty'\\n }, item),\\n col_type: 'scroll_button',\\n })\\n })\\n\\n picacg.d.push({\\n col_type: 'blank_block',\\n })\\n },\\n settingPage: () => {\\n picacg.d.push({\\n title: '签到',\\n url: $(picacg.empty).lazyRule(() => {\\n const picacg = $.require('hiker://page/picacg')\\n const response = picacg.post('users/punch-in', {})\\n if (response.code === 200) {\\n return 'toast://签到成功'\\n } else {\\n return 'toast://'+ (response.message || response.detail)\\n }\\n }),\\n col_type: 'text_center_1'\\n })\\n picacg.d.push({\\n title: '我的评论',\\n url: $(picacg.empty+'$$fypage').rule(() => {\\n const page = MY_URL.split('$$')[1]\\n const picacg = $.require('hiker://page/picacg')\\n const response = picacg.get('users/my-comments?page='+page)\\n\\n response.data.comments.docs.forEach(comment => {\\n let user = comment._user\\n if (user) {\\n picacg.d.push({\\n title: user.name,\\n pic_url: user.avatar ? (/*user.avatar.fileServer*/picacg.cdnUrl+'/static/'+user.avatar.path) : 'https://git.tyrantg.com/tyrantgenesis/hikerViewRules/raw/master/assets/images/pica.jpg',\\n url: picacg.empty,\\n col_type: 'avatar'\\n })\\n }\\n picacg.d.push({\\n title: comment.content+'<br />'+ '❤️ 喜欢:'+comment.likesCount,\\n col_type: 'rich_text'\\n })\\n picacg.d.push({\\n title: comment.isLiked ? '取消点赞' : '点赞',\\n url: $(picacg.empty).lazyRule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.post('comments/'+id+'/like', {})\\n refreshPage(false)\\n return 'toast://提交成功'\\n }, comment._id),\\n col_type: 'text_2',\\n extra: {\\n lineVisible: false\\n },\\n })\\n picacg.d.push({\\n title: '查看漫画',\\n url: $(picacg.empty+'#immersiveTheme##noHistory#$$fypage').rule((id) => {\\n const picacg = $.require('hiker://page/picacg')\\n picacg.getInfo(id)\\n setResult(picacg.d);\\n }, comment._comic._id),\\n col_type: 'text_2',\\n extra: {\\n lineVisible: false\\n },\\n })\\n picacg.d.push({\\n col_type: 'line',\\n })\\n })\\n setResult(picacg.d)\\n }),\\n col_type: 'text_center_1'\\n })\\n picacg.d.push({\\n title: '退出登录',\\n url: $(picacg.empty).lazyRule(() => {\\n const picacg = $.require('hiker://page/picacg')\\n writeFile(picacg.picacg_path, '')\\n toast('退出登录')\\n back(true)\\n return picacg.empty\\n }),\\n col_type: 'text_center_1'\\n })\\n },\\n}\\n\\n$.exports = picacg\\n\"}]",
|
||
"icon": "https://git.tyrantg.com/tyrantgenesis/hikerViewRules/raw/master/assets/images/pica.jpg",
|
||
"proxy": ""
|
||
},
|
||
{
|
||
"last_chapter_rule": "",
|
||
"title": "Hentai One",
|
||
"author": "TyrantGenesis",
|
||
"url": "https://ch.hentai-one.com##fyclass##fypage",
|
||
"version": 1,
|
||
"col_type": "movie_3",
|
||
"class_name": "最新&热门",
|
||
"type": "cartoon",
|
||
"class_url": "new&hot",
|
||
"area_name": "",
|
||
"area_url": "",
|
||
"sort_name": "",
|
||
"year_name": "",
|
||
"sort_url": "",
|
||
"year_url": "",
|
||
"find_rule": "js:\n$.require('hiker://page/one').baseParse();",
|
||
"search_url": "https://ch.hentai-one.com/?s=**&paged=fypage",
|
||
"group": "TyrantG",
|
||
"searchFind": "js:\n$.require('hiker://page/one').searchParse();",
|
||
"detail_col_type": "movie_1",
|
||
"detail_find_rule": "",
|
||
"sdetail_col_type": "movie_1",
|
||
"sdetail_find_rule": "",
|
||
"ua": "mobile",
|
||
"preRule": "",
|
||
"pages": "[{\"name\":\"one\",\"path\":\"one\",\"rule\":\"const one = {\\n empty: 'hiker://empty',\\n d: [],\\n data: {\\n subTab: getMyVar('HentaiOne.subTab', '0'),\\n },\\n baseParse: () => {\\n const [url, classType, page] = MY_URL.split('##')\\n\\n if (classType === 'new') {\\n one.list(pdfa(fetch(url+'/page/'+page), '#list&&a'))\\n } else if (classType === 'hot') {\\n if (parseInt(page) === 1) {\\n const tabs = [\\n {\\n title: '今日',\\n target: '#daily_content',\\n },\\n {\\n title: '本周',\\n target: '#weekly_content',\\n },\\n {\\n title: '本月',\\n target: '#monthly_content',\\n },\\n {\\n title: '全期',\\n target: '#all-days_content',\\n },\\n ]\\n\\n tabs.forEach((tab, index) => {\\n one.d.push({\\n title: one.data.subTab === index.toString() ? '‘‘’’<strong><font color=\\\"#5FCC97\\\">'+tab.title+'</font></strong>' : tab.title,\\n url: $(one.empty).lazyRule((index) => {\\n putMyVar(\\\"HentaiOne.subTab\\\", index)\\n refreshPage(false)\\n return 'hiker://empty'\\n }, index.toString()),\\n col_type: 'scroll_button'\\n })\\n })\\n\\n one.d.push({\\n col_type: 'blank_block',\\n })\\n\\n one.list(pdfa(fetch(url+'/ranking'), tabs[one.data.subTab].target+'&&.tab_content_description&&a'))\\n }\\n }\\n setResult(one.d)\\n },\\n searchParse: () => {\\n one.list(pdfa(getResCode(), '#list&&a'))\\n setResult(one.d)\\n },\\n list: (list) => {\\n list.forEach(item => {\\n let title = pdfh(item, 'a&&Title')\\n let url = pdfh(item, 'a&&href')\\n let pic_url = pdfh(item, 'img&&src')\\n one.d.push({\\n title: title,\\n url: $(url+'#immersiveTheme#').rule((title, url, pic_url) => {\\n const one = $.require('hiker://page/one')\\n one.detail(title, url, pic_url)\\n setResult(one.d)\\n }, title, url, pic_url),\\n pic_url: pic_url,\\n col_type: 'movie_3',\\n })\\n })\\n },\\n detail: (title, url, pic_url) => {\\n setPageTitle(title)\\n const html = getResCode()\\n one.d.push({\\n title: title,\\n url: url,\\n pic_url: pic_url,\\n col_type: 'movie_1_vertical_pic_blur',\\n })\\n one.d.push({\\n col_type: 'line_blank'\\n })\\n\\n const tags = pdfa(html, '.entry-tags&&a')\\n\\n tags.forEach(tag => {\\n let title = pdfh(tag, 'a&&Text')\\n let url = pdfh(tag, 'a&&href')\\n one.d.push({\\n title: pdfh(tag, 'a&&Text'),\\n url: $(url+'/page/fypage').rule((title) => {\\n const one = $.require('hiker://page/one')\\n one.tag(title)\\n setResult(one.d)\\n }, title),\\n col_type: 'flex_button',\\n })\\n })\\n\\n one.d.push({\\n col_type: 'line_blank'\\n })\\n\\n one.d.push({\\n title: '浏览',\\n url: one.getPics(html),\\n col_type: 'text_center_1',\\n })\\n one.d.push({\\n col_type: 'line_blank'\\n })\\n\\n one.d.push({\\n title: '相似内容',\\n url: one.empty,\\n col_type: 'text_1',\\n })\\n\\n one.list(pdfa(html, '.related-list&&a'))\\n },\\n tag: (title) => {\\n setPageTitle(title)\\n try {\\n one.list(pdfa(getResCode(), '#list&&a'))\\n } catch(e) {}\\n },\\n getPics: (html) => {\\n const img_list = []\\n pdfa(html, '.article-images&&img').forEach(img => {\\n img_list.push(pdfh(img, 'img&&src'))\\n })\\n return 'pics://'+img_list.join('&&')\\n },\\n}\\n\\n$.exports = one\\n\"}]",
|
||
"icon": "https://ch.hentai-one.com/wp-content/uploads/2022/08/cropped-number-one-192x192.png",
|
||
"proxy": ""
|
||
},
|
||
{
|
||
"last_chapter_rule": "",
|
||
"title": "Hentai Cosplay",
|
||
"author": "TyrantGenesis",
|
||
"url": "https://hentai-cosplays.com/fyclass/page/fypage/",
|
||
"version": 1,
|
||
"col_type": "movie_3",
|
||
"class_name": "图集排行&图片排行&标签排行&搜索排行&最近浏览&视频&视频排行&全部标签",
|
||
"type": "picture",
|
||
"class_url": "ranking&ranking-images&ranking-tag&ranking-keyword&recently&search-video&ranking-video&tag",
|
||
"area_name": "",
|
||
"area_url": "",
|
||
"sort_name": "",
|
||
"year_name": "",
|
||
"sort_url": "",
|
||
"year_url": "",
|
||
"find_rule": "js:\nrequire('hiker://page/az')\nbaseParse()",
|
||
"search_url": "https://hentai-cosplays.com/search/keyword/**/page/fypage/",
|
||
"group": "TyrantG",
|
||
"searchFind": "js:\nrequire('hiker://page/az')\nsearchParse()",
|
||
"detail_col_type": "movie_1",
|
||
"detail_find_rule": "",
|
||
"sdetail_col_type": "movie_1",
|
||
"sdetail_find_rule": "",
|
||
"ua": "pc",
|
||
"preRule": "",
|
||
"pages": "[{\"name\":\"AZ\",\"path\":\"az\",\"rule\":\"const empty = 'hiker://empty'\\n\\nconst baseParse = () => {\\n const d = []\\n const type_arr = MY_URL.match(/com\\\\/(.*?)\\\\/page/)\\n\\n if (type_arr && type_arr.length === 2) {\\n const type = type_arr[1]\\n switch (type) {\\n case 'ranking':\\n case 'recently':\\n archiveParse(d)\\n break\\n case 'search-video':\\n case 'ranking-video':\\n videoParse(d)\\n break\\n case 'ranking-tag':\\n case 'ranking-keyword':\\n case 'tag':\\n tagParse(d)\\n break\\n case 'ranking-images':\\n imageParse(d)\\n break\\n }\\n }\\n\\n setResult(d)\\n}\\n\\nconst archiveParse = (d) => {\\n const list = pdfa(getResCode(), '#image-list&&.image-list-item')\\n list.forEach(item => {\\n let url = 'https://hentai-cosplays.com/story/'+pdfh(item, 'a&&href').match(/image\\\\/(.*?)\\\\//)[1]+'/'\\n d.push({\\n title: pdfh(item, '.image-list-item-title&&Text'),\\n desc: pdfh(item, '.image-list-item-regist-date&&Text'),\\n url: $(empty).lazyRule((url) => {\\n require('hiker://page/az')\\n return descParse(url)\\n }, url),\\n pic_url: pdfh(item, '.image-list-item-image&&img&&src'),\\n col_type: 'movie_3_marquee',\\n })\\n })\\n}\\n\\nconst videoParse = (d) => {\\n const list = pdfa(getResCode(), '#image-list&&.image-list-item')\\n list.forEach(item => {\\n d.push({\\n title: pdfh(item, '.image-list-item-title&&Text'),\\n desc: pdfh(item, '.image-list-item-regist-date&&Text'),\\n url: $(pd(item, 'a&&href')).lazyRule(() => {\\n require('hiker://page/az')\\n return descVideoParse(input)\\n }),\\n pic_url: pdfh(item, '.image-list-item-image&&img&&src'),\\n col_type: 'movie_3_marquee',\\n })\\n })\\n}\\n\\nconst tagParse = (d) => {\\n const list = pdfa(getResCode(), '#tags&&li')\\n list.forEach(item => {\\n d.push({\\n title: pdfh(item, 'a&&Text'),\\n url: $(pd(item, 'a&&href')+'page/fypage/').rule(() => {\\n require('hiker://page/az')\\n let d = []\\n archiveParse(d)\\n setResult(d)\\n }),\\n col_type: 'text_3',\\n })\\n })\\n}\\n\\nconst imageParse = (d) => {\\n const list = pdfa(getResCode(), '#wrapper&&#container&&.item')\\n list.forEach(item => {\\n let url = 'https://hentai-cosplays.com/story/'+pdfh(item, 'a&&href').match(/image\\\\/(.*?)\\\\/attachment/)[1]+'/'\\n d.push({\\n title: pdfh(item, 'img&&alt'),\\n url: $(empty).lazyRule((url) => {\\n require('hiker://page/az')\\n return descParse(url)\\n }, url),\\n pic_url: pdfh(item, 'img&&data-original'),\\n col_type: 'movie_3_marquee',\\n })\\n })\\n}\\n\\nconst descParse = (url) => {\\n const html = request(url)\\n const list = pdfa(html, 'amp-story&&-story-page')\\n const images = []\\n\\n list.forEach(item => {\\n images.push(pdfh(item, 'amp-img&&src'))\\n })\\n\\n return 'pics://'+images.join('&&')\\n}\\n\\nconst descVideoParse = (url) => {\\n const html = request(url)\\n const match = html.match(/\\\"contentUrl\\\": \\\"(.*?)\\\",/)\\n\\n return match[1]\\n}\\n\\nconst searchParse = () => {\\n const d = []\\n archiveParse(d)\\n setResult(d)\\n}\\n\"}]",
|
||
"icon": "",
|
||
"proxy": ""
|
||
},
|
||
{
|
||
"title": "Everia",
|
||
"author": "TyrantGenesis",
|
||
"url": "https://everia.club/category/fyclass/page/fypage/",
|
||
"version": 1,
|
||
"col_type": "pic_2_card",
|
||
"type": "picture",
|
||
"class_name": "Cosplay&Chinese&Thailand&Korea&Magazine&Aidol&Gravure",
|
||
"class_url": "cosplay&chinese&thailand&korea&magazine&aidol&gravure",
|
||
"area_name": "",
|
||
"area_url": "",
|
||
"sort_name": "",
|
||
"year_name": "",
|
||
"sort_url": "",
|
||
"year_url": "",
|
||
"find_rule": ".posts-wrapper&&article;\n.content&&h2&&Text;\n.content&&img&&data-src||src;\n.content&&h2&&Text;\na&&href.js:input+`@lazyRule=.js:'pics://'+pdfa(fetch(input),'.has-nested-images&&&&img').map(item => pdfh(item, 'img&&&&data-src')).join('&&&&')`",
|
||
"search_url": "https://everia.club/?paged=fypage&s=**",
|
||
"group": "TyrantG",
|
||
"searchFind": ".posts-wrapper&&article;\n.content&&h2&&Text;\na&&href.js:input+`@lazyRule=.js:'pics://'+pdfa(fetch(input),'.has-nested-images&&&&img').map(item => pdfh(item, 'img&&&&data-src')).join('&&&&')`;\n.content&&h2&&Text;\n.content&&h2&&Text;\n.content&&img&&data-src||src;",
|
||
"detail_col_type": "",
|
||
"detail_find_rule": "",
|
||
"sdetail_col_type": "",
|
||
"sdetail_find_rule": "",
|
||
"ua": "mobile",
|
||
"preRule": "",
|
||
"pages": "[]",
|
||
"icon": "https://everiaeveria.b-cdn.net/wp-content/uploads/2022/03/Everiaicon.jpg"
|
||
}
|
||
] |