diff --git a/JN/EXT/userScripts/bilfun.user.js b/JN/EXT/userScripts/bilfun.user.js new file mode 100644 index 00000000..88d9badf --- /dev/null +++ b/JN/EXT/userScripts/bilfun.user.js @@ -0,0 +1,47 @@ +// ==UserScript== +// @name maccms-mxonepro +// @namespace gmspider +// @version 2025.1.11 +// @description maccms GMSpider +// @author Luomo +// @match *://*/* +// @require https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.slim.min.js +// @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/SFW-Spiders@main/Spiders-Lib/maccms10.js +// @grant unsafeWindow +// ==/UserScript== +console.log(JSON.stringify(GM_info)); +(function () { + const GMSpiderArgs = {}; + if (typeof GmSpiderInject !== 'undefined') { + let args = JSON.parse(GmSpiderInject.GetSpiderArgs()); + GMSpiderArgs.fName = args.shift(); + GMSpiderArgs.fArgs = args; + } else { + GMSpiderArgs.fName = "homeContent"; + GMSpiderArgs.fArgs = [true]; + } + Object.freeze(GMSpiderArgs); + const GmSpider = MacCmsGMSpider({ + homeContent: { + category: { + select: ".navbar-item", + slice: [1, 6] + }, + defaultResult: { + class: [{ + type_id: "6", + type_name: "短剧" + }] + } + } + }) + + $(document).ready(function () { + const result = GmSpider[GMSpiderArgs.fName](...GMSpiderArgs.fArgs); + console.log(result); + if (typeof GmSpiderInject !== 'undefined') { + GmSpiderInject.SetSpiderResult(JSON.stringify(result)); + } + }); +})(); + diff --git a/JN/EXT/userScripts/dandantu.user.js b/JN/EXT/userScripts/dandantu.user.js new file mode 100644 index 00000000..00d70c41 --- /dev/null +++ b/JN/EXT/userScripts/dandantu.user.js @@ -0,0 +1,44 @@ +// ==UserScript== +// @name maccms-mxonepro +// @namespace gmspider +// @version 2025.1.11 +// @description maccms GMSpider +// @author Luomo +// @match *://*/* +// @require https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.slim.min.js +// @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/SFW-Spiders@main/Spiders-Lib/maccms10.js +// @grant unsafeWindow +// ==/UserScript== +console.log(JSON.stringify(GM_info)); +(function () { + const GMSpiderArgs = {}; + if (typeof GmSpiderInject !== 'undefined') { + let args = JSON.parse(GmSpiderInject.GetSpiderArgs()); + GMSpiderArgs.fName = args.shift(); + GMSpiderArgs.fArgs = args; + } else { + GMSpiderArgs.fName = "homeContent"; + GMSpiderArgs.fArgs = [true]; + } + Object.freeze(GMSpiderArgs); + const GmSpider = MacCmsGMSpider({ + configPicUserAgent: false, + homeContent: { + category: { + select: ".navbar-item", + slice: [1, 5] + } + }, + playerContent: { + OkPlayer: true + } + }); + $(document).ready(function () { + const result = GmSpider[GMSpiderArgs.fName](...GMSpiderArgs.fArgs); + console.log(result); + if (typeof GmSpiderInject !== 'undefined') { + GmSpiderInject.SetSpiderResult(JSON.stringify(result)); + } + }); +})(); + diff --git a/JN/EXT/userScripts/fantuan.user.js b/JN/EXT/userScripts/fantuan.user.js new file mode 100644 index 00000000..00d70c41 --- /dev/null +++ b/JN/EXT/userScripts/fantuan.user.js @@ -0,0 +1,44 @@ +// ==UserScript== +// @name maccms-mxonepro +// @namespace gmspider +// @version 2025.1.11 +// @description maccms GMSpider +// @author Luomo +// @match *://*/* +// @require https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.slim.min.js +// @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/SFW-Spiders@main/Spiders-Lib/maccms10.js +// @grant unsafeWindow +// ==/UserScript== +console.log(JSON.stringify(GM_info)); +(function () { + const GMSpiderArgs = {}; + if (typeof GmSpiderInject !== 'undefined') { + let args = JSON.parse(GmSpiderInject.GetSpiderArgs()); + GMSpiderArgs.fName = args.shift(); + GMSpiderArgs.fArgs = args; + } else { + GMSpiderArgs.fName = "homeContent"; + GMSpiderArgs.fArgs = [true]; + } + Object.freeze(GMSpiderArgs); + const GmSpider = MacCmsGMSpider({ + configPicUserAgent: false, + homeContent: { + category: { + select: ".navbar-item", + slice: [1, 5] + } + }, + playerContent: { + OkPlayer: true + } + }); + $(document).ready(function () { + const result = GmSpider[GMSpiderArgs.fName](...GMSpiderArgs.fArgs); + console.log(result); + if (typeof GmSpiderInject !== 'undefined') { + GmSpiderInject.SetSpiderResult(JSON.stringify(result)); + } + }); +})(); + diff --git a/JN/EXT/userScripts/freeok.user.js b/JN/EXT/userScripts/freeok.user.js new file mode 100644 index 00000000..d3888e2f --- /dev/null +++ b/JN/EXT/userScripts/freeok.user.js @@ -0,0 +1,44 @@ +// ==UserScript== +// @name maccms-mxonepro +// @namespace gmspider +// @version 2025.1.11 +// @description maccms GMSpider +// @author Luomo +// @match *://*/* +// @require https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.slim.min.js +// @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/SFW-Spiders@main/Spiders-Lib/maccms10.js +// @grant unsafeWindow +// ==/UserScript== +console.log(JSON.stringify(GM_info)); +(function () { + const GMSpiderArgs = {}; + if (typeof GmSpiderInject !== 'undefined') { + let args = JSON.parse(GmSpiderInject.GetSpiderArgs()); + GMSpiderArgs.fName = args.shift(); + GMSpiderArgs.fArgs = args; + } else { + GMSpiderArgs.fName = "playerContent"; + GMSpiderArgs.fArgs = [true]; + } + Object.freeze(GMSpiderArgs); + const GmSpider = MacCmsGMSpider({ + configPicUserAgent: false, + homeContent: { + category: { + select: ".navbar-item", + slice: [1, 5] + } + }, + playerContent: { + OkPlayer: true + } + }); + $(document).ready(function () { + const result = GmSpider[GMSpiderArgs.fName](...GMSpiderArgs.fArgs); + console.log(result); + if (typeof GmSpiderInject !== 'undefined') { + GmSpiderInject.SetSpiderResult(JSON.stringify(result)); + } + }); +})(); + diff --git a/JN/EXT/userScripts/gaze.user.js b/JN/EXT/userScripts/gaze.user.js index 900bba6d..6dded531 100644 --- a/JN/EXT/userScripts/gaze.user.js +++ b/JN/EXT/userScripts/gaze.user.js @@ -5,9 +5,9 @@ // @description gaze GMSpider // @author Luomo // @match https://gaze.run/* -// @require https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.slim.min.js -// @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/Spiders-Lib@main/lib/ajaxhook-3.0.3.min.js -// @require https://unpkg.com/blob-util/dist/blob-util.min.js +// @require https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.slim.min.js +// @require https://cdn.jsdelivr.net/npm/ajax-hook@3.0.3/dist/ajaxhook.umd.min.js +// @require https://cdn.jsdelivr.net/npm/blob-util@2.0.2/dist/blob-util.min.js // @grant unsafeWindow // @run-at document-end // ==/UserScript== @@ -140,7 +140,7 @@ console.log(JSON.stringify(GM_info)); fileData = fileData.replaceAll(' ', ""); playData = { type: "file", - data: { + ext: { header: { "User-Agent": window.navigator.userAgent, "Referer": window.location.href @@ -151,13 +151,9 @@ console.log(JSON.stringify(GM_info)); }); } else { playData = { - type: "match", - data: { - url: src - } + type: "match" } } - console.log(playData); return playData; } @@ -227,43 +223,30 @@ console.log(JSON.stringify(GM_info)); return listVideos(result); }, detailContent: function (ids) { - console.log(ids); - return new Promise(function (resolve) { - _gotSrc = resolve; - }).then(async (playerSrc) => { - console.log("playerSrc", playerSrc) - let playUrl = []; - let playValue = await getPlay(playerSrc.src); - playUrl.push({ - name: $("#btngroup .playbtn").first().text().trim(), - value: playValue - }) - $("#btngroup .playbtn:gt(0)").each(function () { - playUrl.push({ - name: $(this).text().trim(), - value: { - type: "webview", - data: { - replace: { - mcid: unsafeWindow.mcid, - path: $(this).data("path") - } - } + let media = []; + $("#btngroup .playbtn").each(function () { + media.push({ + name: $(this).text().trim(), + type: "webview", + ext: { + replace: { + mcid: unsafeWindow.mcid, + path: $(this).data("path") } - }) + } }) - return { - vod_id: ids[0], - vod_name: $(".d-flex .grade:first").text().trim(), - vod_pic: $(".d-flex .pimgs").attr("src"), - vod_remarks: $(".d-flex .grade:eq(1)").text().trim(), - vod_content: $(".d-flex p").text().trim(), - vod_play_data: [{ - from: "注视影视", - url: playUrl - }] - }; - }); + }) + return { + vod_id: ids[0], + vod_name: $(".d-flex .grade:first").text().trim(), + vod_pic: $(".d-flex .pimgs").attr("src"), + vod_remarks: $(".d-flex .grade:eq(1)").text().trim(), + vod_content: $(".d-flex p").text().trim(), + vod_play_data: [{ + from: "注视影视", + media: media + }] + }; }, playerContent: function (flag, id, vipFlags) { console.log(flag, id, unsafeWindow.mid); diff --git a/JN/EXT/userScripts/hitv.user.js b/JN/EXT/userScripts/hitv.user.js index 2873ca50..380eaa23 100644 --- a/JN/EXT/userScripts/hitv.user.js +++ b/JN/EXT/userScripts/hitv.user.js @@ -6,7 +6,7 @@ // @author Luomo // @match https://www.upfuhn.com/* // @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/Spiders-Lib@main/lib/browser-extension-url-match-1.2.0.min.js -// @require https://scriptcat.org/lib/637/1.4.3/ajaxHooker.js +// @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/SFW-Spiders@main/Spiders-Lib/ajaxHooker-1.4.3.js // @grant GM_setValue // @grant GM_getValue // @grant unsafeWindow @@ -20,28 +20,43 @@ console.log(JSON.stringify(GM_info)); GMSpiderArgs.fName = args.shift(); GMSpiderArgs.fArgs = args; } else { + // GMSpiderArgs.fName = "homeContent"; + // GMSpiderArgs.fArgs = [true]; GMSpiderArgs.fName = "searchContent"; - GMSpiderArgs.fArgs = [true]; - // GMSpiderArgs.fName = "categoryContent"; - // GMSpiderArgs.fArgs = ["82", 2, true, {tag: "动作", y: "2024", o: "1", a: "大陆"}]; + GMSpiderArgs.fArgs = ["82", 2, true, {tag: "动作", y: "2024", o: "1", a: "大陆"}]; } Object.freeze(GMSpiderArgs); let hookConfigs = { - "homeContent": [{ - matcher: matchPattern("https://*/v1/report_channel_data").assertValid(), - onResponseHook: function (response) { - Array.from(document.querySelectorAll(".left-wrap .tab-box:nth-child(2) .swiper-slide span")) - .find(el => el.textContent === "全部").dispatchEvent(new Event("click")); + "homeContent": [ + { + matcher: matchPattern("https://*/*/meta/*.json").assertValid(), + onResponseHook: function (response) { + let executed = false; + unsafeWindow.useNuxtApp().hook('link:prefetch', () => { + if (!executed) { + Array.from(document.querySelectorAll(".left-wrap .tab-box:nth-child(2) .swiper-slide span")).find(el => el.textContent === "全部").dispatchEvent(new Event("click")); + } + executed = true; + }); + } + }, + { + dataKey: "ys_video_sites", matcher: matchPattern("https://*/v1/ys_video_sites?*").assertValid() } - }, { - dataKey: "ys_video_sites", matcher: matchPattern("https://*/v1/ys_video_sites?*").assertValid() - }], "categoryContent": [{ - matcher: matchPattern("https://*/v1/report_channel_data").assertValid(), + ], + "categoryContent": [{ + matcher: matchPattern("https://*/*/meta/*.json").assertValid(), onResponseHook: function (response) { const extend = GMSpiderArgs.fArgs[3]; let tag = extend?.tag ?? "全部" - Array.from(document.querySelectorAll(".left-wrap .tab-box:nth-child(2) .swiper-slide span")) - .find(el => el.textContent === tag).dispatchEvent(new Event("click")); + let executed = false; + unsafeWindow.useNuxtApp().hook('link:prefetch', () => { + if (!executed) { + Array.from(document.querySelectorAll(".left-wrap .tab-box:nth-child(2) .swiper-slide span")) + .find(el => el.textContent === tag).dispatchEvent(new Event("click")); + } + executed = true; + }); } }, { dataKey: "ys_video_sites", @@ -63,10 +78,12 @@ console.log(JSON.stringify(GM_info)); } }], "detailContent": [{ - dataKey: "meta", matcher: matchPattern("https://*/v1/report_channel_data").assertValid() + dataKey: "meta", + matcher: matchPattern("https://*/*/meta/*.json").assertValid(), }], "searchContent": [{ - dataKey: "meta", matcher: matchPattern("https://*/v1/report_channel_data").assertValid() + dataKey: "meta", + matcher: matchPattern("https://*/*/meta/*.json").assertValid(), }], }; const GmSpider = (function () { @@ -87,6 +104,8 @@ console.log(JSON.stringify(GM_info)); }; return { homeContent: function (filter) { + //清理cookie + document.cookie.split(";").forEach(function(c) { document.cookie = c.replace(/^ +/, "").replace(/=.*/, "=;expires=" + new Date().toUTCString() + ";path=/"); }); let result = { class: [{type_id: "85", type_name: "短剧"}, {type_id: "81", type_name: "电影"}, { type_id: "82", @@ -145,35 +164,39 @@ console.log(JSON.stringify(GM_info)); }, detailContent: function (ids) { let playUrl = []; let vod = {}; - const formatData = JSON.parse(document.getElementById("__NUXT_DATA__").innerHTML); - formatData.forEach((data) => { - if (typeof (vod?.vod_id) == "undefined" && typeof (data?.video_desc) === "number") { + const nuxtData = JSON.parse(JSON.stringify(unsafeWindow.__NUXT__.data)); + for (const [key, value] of Object.entries(nuxtData)) { + if (typeof (value.data?.ys_video_site) != "undefined") { + value.data.data.forEach((item) => { + playUrl.push({ + name: item.series_num, + type: "finalUrl", + ext: { + header: { + "User-Agent": window.navigator.userAgent, + "Referer": window.location.href + }, + url: item.video_url + } + }) + }) + const ysVideoSite = value.data.ys_video_site; vod = { - vod_id: formatData[data.video_site_id], - vod_name: formatData[data.video_name], - vod_content: formatData[data.video_desc], - vod_year: formatData[data.years], - vod_area: formatData[data.area], - vod_actor: formatData[data.main_actor], - type_name: formatData[data.tag], + vod_id: ysVideoSite.video_site_id, + vod_name: ysVideoSite.video_name, + vod_content: ysVideoSite.video_desc, + vod_year: ysVideoSite.years, + vod_area: ysVideoSite.area, + vod_actor: ysVideoSite.main_actor, + type_name: ysVideoSite.tag, vod_play_data: [{ - from: "Hi视频", url: playUrl + from: "Hi视频", + media: playUrl }] }; + } - if (typeof (data?.series_num) === "number") { - playUrl.push({ - name: formatData[data.series_num], - value: { - type: "finalUrl", data: { - header: { - "User-Agent": window.navigator.userAgent, "Referer": window.location.href - }, url: formatData[data.video_url] - } - } - }) - } - }) + } return vod; }, searchContent: function (key, quick, pg) { const result = { @@ -181,30 +204,30 @@ console.log(JSON.stringify(GM_info)); page: pg, pagecount: 1 }; - const formatData = JSON.parse(document.getElementById("__NUXT_DATA__").innerHTML); - console.log(formatData); - formatData.forEach((data) => { - if (typeof (data?.first_video_series) === "number") { - let firstVideo = formatData[data.first_video_series]; - result.list.push({ - vod_id: formatData[firstVideo.video_site_id], - vod_name: formatData[firstVideo.video_name], - vod_pic: formatData[firstVideo.video_vertical_url], - vod_remarks: formatData[firstVideo.tag], - vod_year: formatData[firstVideo.years] - }) - formatData[data.video_sites].forEach((videoIndex) => { - let video = formatData[videoIndex]; + const nuxtData = JSON.parse(JSON.stringify(unsafeWindow.__NUXT__.data)); + for (const [key, value] of Object.entries(nuxtData)) { + if (typeof (value.data?.first_video_series) != "undefined") { + if (value.data.first_video_series != null) { + const firstVideo = value.data.first_video_series result.list.push({ - vod_id: formatData[video.video_site_id], - vod_name: formatData[video.video_name], - vod_pic: formatData[video.video_vertical_url], - vod_remarks: formatData[video.tag], - vod_year: formatData[video.years] + vod_id: firstVideo.video_site_id, + vod_name: firstVideo.video_name, + vod_pic: firstVideo.video_vertical_url, + vod_remarks: firstVideo.tag, + vod_year: firstVideo.years + }) + } + value.data.video_sites.forEach((video) => { + result.list.push({ + vod_id: video.video_site_id, + vod_name: video.video_name, + vod_pic: video.video_vertical_url, + vod_remarks: video.tag, + vod_year: video.years }) }) } - }) + } return result; } }; @@ -214,7 +237,7 @@ console.log(JSON.stringify(GM_info)); let hookResult = {}; ajaxHooker.hook(request => { hookConfigs[GMSpiderArgs.fName].forEach((hookConfig) => { - if (typeof hookConfig.onRequestHook === "function" && hookConfig.matcher.match(request.url)) { + if (typeof hookConfig.onRequestHook === "function" && hookConfig.matcher.match(request.url.startsWith("http") ? request.url : unsafeWindow.window.location.origin + request.url)) { hookConfig.onRequestHook(request); } }); @@ -226,7 +249,7 @@ console.log(JSON.stringify(GM_info)); dataTodoCount++; } } - if (hookConfig.matcher.match(request.url)) { + if (hookConfig.matcher.match(request.url.startsWith("http") ? request.url : unsafeWindow.window.location.origin + request.url)) { request.response = res => { if (typeof hookConfig.onResponseHook === "function") { hookConfig.onResponseHook(res); diff --git a/JN/EXT/userScripts/huochetaidu.user.js b/JN/EXT/userScripts/huochetaidu.user.js new file mode 100644 index 00000000..988addb0 --- /dev/null +++ b/JN/EXT/userScripts/huochetaidu.user.js @@ -0,0 +1,41 @@ +// ==UserScript== +// @name maccms-mxonepro +// @namespace gmspider +// @version 2025.1.11 +// @description maccms GMSpider +// @author Luomo +// @match *://*/* +// @require https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.slim.min.js +// @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/SFW-Spiders@main/Spiders-Lib/maccms10.js +// @grant unsafeWindow +// ==/UserScript== +console.log(JSON.stringify(GM_info)); +(function () { + const GMSpiderArgs = {}; + if (typeof GmSpiderInject !== 'undefined') { + let args = JSON.parse(GmSpiderInject.GetSpiderArgs()); + GMSpiderArgs.fName = args.shift(); + GMSpiderArgs.fArgs = args; + } else { + GMSpiderArgs.fName = "homeContent"; + GMSpiderArgs.fArgs = [true]; + } + Object.freeze(GMSpiderArgs); + const GmSpider = MacCmsGMSpider({ + configPicUserAgent: true, + homeContent: { + category: { + select: ".navbar-item", + slice: [1, 6] + } + } + }); + $(document).ready(function () { + const result = GmSpider[GMSpiderArgs.fName](...GMSpiderArgs.fArgs); + console.log(result); + if (typeof GmSpiderInject !== 'undefined') { + GmSpiderInject.SetSpiderResult(JSON.stringify(result)); + } + }); +})(); + diff --git a/JN/EXT/userScripts/juyeye.user.js b/JN/EXT/userScripts/juyeye.user.js new file mode 100644 index 00000000..00d70c41 --- /dev/null +++ b/JN/EXT/userScripts/juyeye.user.js @@ -0,0 +1,44 @@ +// ==UserScript== +// @name maccms-mxonepro +// @namespace gmspider +// @version 2025.1.11 +// @description maccms GMSpider +// @author Luomo +// @match *://*/* +// @require https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.slim.min.js +// @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/SFW-Spiders@main/Spiders-Lib/maccms10.js +// @grant unsafeWindow +// ==/UserScript== +console.log(JSON.stringify(GM_info)); +(function () { + const GMSpiderArgs = {}; + if (typeof GmSpiderInject !== 'undefined') { + let args = JSON.parse(GmSpiderInject.GetSpiderArgs()); + GMSpiderArgs.fName = args.shift(); + GMSpiderArgs.fArgs = args; + } else { + GMSpiderArgs.fName = "homeContent"; + GMSpiderArgs.fArgs = [true]; + } + Object.freeze(GMSpiderArgs); + const GmSpider = MacCmsGMSpider({ + configPicUserAgent: false, + homeContent: { + category: { + select: ".navbar-item", + slice: [1, 5] + } + }, + playerContent: { + OkPlayer: true + } + }); + $(document).ready(function () { + const result = GmSpider[GMSpiderArgs.fName](...GMSpiderArgs.fArgs); + console.log(result); + if (typeof GmSpiderInject !== 'undefined') { + GmSpiderInject.SetSpiderResult(JSON.stringify(result)); + } + }); +})(); + diff --git a/JN/EXT/userScripts/pipiys.user.js b/JN/EXT/userScripts/pipiys.user.js new file mode 100644 index 00000000..f2c55c96 --- /dev/null +++ b/JN/EXT/userScripts/pipiys.user.js @@ -0,0 +1,41 @@ +// ==UserScript== +// @name maccms-mxonepro +// @namespace gmspider +// @version 2025.1.11 +// @description maccms GMSpider +// @author Luomo +// @match *://*/* +// @require https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.slim.min.js +// @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/SFW-Spiders@main/Spiders-Lib/maccms10.js +// @grant unsafeWindow +// ==/UserScript== +console.log(JSON.stringify(GM_info)); +(function () { + const GMSpiderArgs = {}; + if (typeof GmSpiderInject !== 'undefined') { + let args = JSON.parse(GmSpiderInject.GetSpiderArgs()); + GMSpiderArgs.fName = args.shift(); + GMSpiderArgs.fArgs = args; + } else { + GMSpiderArgs.fName = "homeContent"; + GMSpiderArgs.fArgs = [true]; + } + Object.freeze(GMSpiderArgs); + const GmSpider = MacCmsGMSpider({ + configPicUserAgent: false, + homeContent: { + category: { + select: ".navbar-item", + slice: [1, 7] + } + } + }); + $(document).ready(function () { + const result = GmSpider[GMSpiderArgs.fName](...GMSpiderArgs.fArgs); + console.log(result); + if (typeof GmSpiderInject !== 'undefined') { + GmSpiderInject.SetSpiderResult(JSON.stringify(result)); + } + }); +})(); + diff --git a/JN/EXT/userScripts/ppdys.user.js b/JN/EXT/userScripts/ppdys.user.js new file mode 100644 index 00000000..5d37b55c --- /dev/null +++ b/JN/EXT/userScripts/ppdys.user.js @@ -0,0 +1,41 @@ +// ==UserScript== +// @name maccms-mxonepro +// @namespace gmspider +// @version 2025.1.11 +// @description maccms GMSpider +// @author Luomo +// @match *://*/* +// @require https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.slim.min.js +// @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/SFW-Spiders@main/Spiders-Lib/maccms10.js +// @grant unsafeWindow +// ==/UserScript== +console.log(JSON.stringify(GM_info)); +(function () { + const GMSpiderArgs = {}; + if (typeof GmSpiderInject !== 'undefined') { + let args = JSON.parse(GmSpiderInject.GetSpiderArgs()); + GMSpiderArgs.fName = args.shift(); + GMSpiderArgs.fArgs = args; + } else { + GMSpiderArgs.fName = "homeContent"; + GMSpiderArgs.fArgs = [true]; + } + Object.freeze(GMSpiderArgs); + const GmSpider = MacCmsGMSpider({ + configPicUserAgent: false, + homeContent: { + category: { + select: ".navbar-item", + slice: [1, 6] + } + } + }); + $(document).ready(function () { + const result = GmSpider[GMSpiderArgs.fName](...GMSpiderArgs.fArgs); + console.log(result); + if (typeof GmSpiderInject !== 'undefined') { + GmSpiderInject.SetSpiderResult(JSON.stringify(result)); + } + }); +})(); + diff --git a/JN/EXT/userScripts/yirenmeng.user.js b/JN/EXT/userScripts/yirenmeng.user.js new file mode 100644 index 00000000..55f0370d --- /dev/null +++ b/JN/EXT/userScripts/yirenmeng.user.js @@ -0,0 +1,41 @@ +// ==UserScript== +// @name maccms-mxonepro +// @namespace gmspider +// @version 2025.1.11 +// @description maccms GMSpider +// @author Luomo +// @match *://*/* +// @require https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.slim.min.js +// @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/SFW-Spiders@main/Spiders-Lib/maccms10.js +// @grant unsafeWindow +// ==/UserScript== +console.log(JSON.stringify(GM_info)); +(function () { + const GMSpiderArgs = {}; + if (typeof GmSpiderInject !== 'undefined') { + let args = JSON.parse(GmSpiderInject.GetSpiderArgs()); + GMSpiderArgs.fName = args.shift(); + GMSpiderArgs.fArgs = args; + } else { + GMSpiderArgs.fName = "homeContent"; + GMSpiderArgs.fArgs = [true]; + } + Object.freeze(GMSpiderArgs); + const GmSpider = MacCmsGMSpider({ + configPicUserAgent: false, + homeContent: { + category: { + select: ".navbar-item", + slice: [1, 8] + } + } + }); + $(document).ready(function () { + const result = GmSpider[GMSpiderArgs.fName](...GMSpiderArgs.fArgs); + console.log(result); + if (typeof GmSpiderInject !== 'undefined') { + GmSpiderInject.SetSpiderResult(JSON.stringify(result)); + } + }); +})(); + diff --git a/JN/EXT/userScripts/ysfp.user.js b/JN/EXT/userScripts/ysfp.user.js index 194ca823..8d6dd805 100644 --- a/JN/EXT/userScripts/ysfp.user.js +++ b/JN/EXT/userScripts/ysfp.user.js @@ -6,7 +6,7 @@ // @author Luomo // @match https://m.yfsp.tv/* // @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/Spiders-Lib@main/lib/browser-extension-url-match-1.2.0.min.js -// @require https://cdn.jsdelivr.net/gh/CatVodSpider-GM/Spiders-Lib@main/lib/ajaxhook-3.0.3.min.js +// @require https://cdn.jsdelivr.net/npm/ajax-hook@3.0.3/dist/ajaxhook.umd.min.js // @grant GM_setValue // @grant GM_getValue // @grant unsafeWindow @@ -166,38 +166,34 @@ console.log(JSON.stringify(GM_info)); let episodeKey = ""; hookResult.playdata.data.list.forEach((item) => { if (mediaUrl === "" && item.mediaUrl !== "") { - mediaUrl = `@{base64Decoder:${btoa(item.mediaUrl)}}`; + mediaUrl = item.mediaUrl; episodeKey = item.episodeKey; } }) - let vodPlayUrls = []; + let media = []; if (videodetails.videoType !== 0) { if (typeof hookResult.videochoosegather !== "undefined") { hookResult.videochoosegather.data.list.forEach((item) => { if (videodetails.episodeTitle === item.episodeTitle) { - vodPlayUrls.push({ + media.push({ name: item.episodeTitle, - value: { - type: "finalUrl", - data: { - "header": { - "User-Agent": window.navigator.userAgent, - "Referer": window.location.href - }, - "url": mediaUrl - } + type: "finalUrl", + ext: { + "header": { + "User-Agent": window.navigator.userAgent, + "Referer": window.location.href + }, + "url": mediaUrl } }); } else { - vodPlayUrls.push({ + media.push({ name: item.episodeTitle, - value: { - type: "webview", - data: { - replace: { - mediaKey: item.mediaKey, - episodeKey: item.episodeKey - } + type: "webview", + ext: { + replace: { + mediaKey: item.mediaKey, + episodeKey: item.episodeKey } } }) @@ -208,17 +204,15 @@ console.log(JSON.stringify(GM_info)); return; } } else { - vodPlayUrls.push({ + media.push({ name: videodetails.episodeTitle, - value: { - type: "finalUrl", - data: { - "header": { - "User-Agent": window.navigator.userAgent, - "Referer": window.location.href - }, - "url": mediaUrl - } + type: "finalUrl", + ext: { + "header": { + "User-Agent": window.navigator.userAgent, + "Referer": window.location.href + }, + "url": mediaUrl } }) } @@ -233,10 +227,8 @@ console.log(JSON.stringify(GM_info)); vod_content: videodetails.introduce, vod_play_data: [{ from: "爱壹帆", - url: vodPlayUrls - }], - vod_play_from: "爱壹帆", - vod_play_url: vodPlayUrls.join("#"), + media: media + }] }; }, playerContent: function (flag, id, vipFlags) { @@ -248,7 +240,7 @@ console.log(JSON.stringify(GM_info)); }) return { type: "finalUrl", - data: { + ext: { "header": { "User-Agent": window.navigator.userAgent, "Referer": window.location.href