This commit is contained in:
n3rddd 2025-01-12 17:40:42 +08:00 committed by GitHub
parent 74433aef9a
commit 93cda22199
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
12 changed files with 528 additions and 143 deletions

View File

@ -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));
}
});
})();

View File

@ -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));
}
});
})();

View File

@ -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));
}
});
})();

View File

@ -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));
}
});
})();

View File

@ -5,9 +5,9 @@
// @description gaze GMSpider // @description gaze GMSpider
// @author Luomo // @author Luomo
// @match https://gaze.run/* // @match https://gaze.run/*
// @require https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.slim.min.js // @require https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.slim.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
// @require https://unpkg.com/blob-util/dist/blob-util.min.js // @require https://cdn.jsdelivr.net/npm/blob-util@2.0.2/dist/blob-util.min.js
// @grant unsafeWindow // @grant unsafeWindow
// @run-at document-end // @run-at document-end
// ==/UserScript== // ==/UserScript==
@ -140,7 +140,7 @@ console.log(JSON.stringify(GM_info));
fileData = fileData.replaceAll(' ', ""); fileData = fileData.replaceAll(' ', "");
playData = { playData = {
type: "file", type: "file",
data: { ext: {
header: { header: {
"User-Agent": window.navigator.userAgent, "User-Agent": window.navigator.userAgent,
"Referer": window.location.href "Referer": window.location.href
@ -151,13 +151,9 @@ console.log(JSON.stringify(GM_info));
}); });
} else { } else {
playData = { playData = {
type: "match", type: "match"
data: {
url: src
}
} }
} }
console.log(playData);
return playData; return playData;
} }
@ -227,43 +223,30 @@ console.log(JSON.stringify(GM_info));
return listVideos(result); return listVideos(result);
}, },
detailContent: function (ids) { detailContent: function (ids) {
console.log(ids); let media = [];
return new Promise(function (resolve) { $("#btngroup .playbtn").each(function () {
_gotSrc = resolve; media.push({
}).then(async (playerSrc) => { name: $(this).text().trim(),
console.log("playerSrc", playerSrc) type: "webview",
let playUrl = []; ext: {
let playValue = await getPlay(playerSrc.src); replace: {
playUrl.push({ mcid: unsafeWindow.mcid,
name: $("#btngroup .playbtn").first().text().trim(), path: $(this).data("path")
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")
}
}
} }
}) }
}) })
return { })
vod_id: ids[0], return {
vod_name: $(".d-flex .grade:first").text().trim(), vod_id: ids[0],
vod_pic: $(".d-flex .pimgs").attr("src"), vod_name: $(".d-flex .grade:first").text().trim(),
vod_remarks: $(".d-flex .grade:eq(1)").text().trim(), vod_pic: $(".d-flex .pimgs").attr("src"),
vod_content: $(".d-flex p").text().trim(), vod_remarks: $(".d-flex .grade:eq(1)").text().trim(),
vod_play_data: [{ vod_content: $(".d-flex p").text().trim(),
from: "注视影视", vod_play_data: [{
url: playUrl from: "注视影视",
}] media: media
}; }]
}); };
}, },
playerContent: function (flag, id, vipFlags) { playerContent: function (flag, id, vipFlags) {
console.log(flag, id, unsafeWindow.mid); console.log(flag, id, unsafeWindow.mid);

View File

@ -6,7 +6,7 @@
// @author Luomo // @author Luomo
// @match https://www.upfuhn.com/* // @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://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_setValue
// @grant GM_getValue // @grant GM_getValue
// @grant unsafeWindow // @grant unsafeWindow
@ -20,28 +20,43 @@ console.log(JSON.stringify(GM_info));
GMSpiderArgs.fName = args.shift(); GMSpiderArgs.fName = args.shift();
GMSpiderArgs.fArgs = args; GMSpiderArgs.fArgs = args;
} else { } else {
// GMSpiderArgs.fName = "homeContent";
// GMSpiderArgs.fArgs = [true];
GMSpiderArgs.fName = "searchContent"; GMSpiderArgs.fName = "searchContent";
GMSpiderArgs.fArgs = [true]; GMSpiderArgs.fArgs = ["82", 2, true, {tag: "动作", y: "2024", o: "1", a: "大陆"}];
// GMSpiderArgs.fName = "categoryContent";
// GMSpiderArgs.fArgs = ["82", 2, true, {tag: "动作", y: "2024", o: "1", a: "大陆"}];
} }
Object.freeze(GMSpiderArgs); Object.freeze(GMSpiderArgs);
let hookConfigs = { let hookConfigs = {
"homeContent": [{ "homeContent": [
matcher: matchPattern("https://*/v1/report_channel_data").assertValid(), {
onResponseHook: function (response) { matcher: matchPattern("https://*/*/meta/*.json").assertValid(),
Array.from(document.querySelectorAll(".left-wrap .tab-box:nth-child(2) .swiper-slide span")) onResponseHook: function (response) {
.find(el => el.textContent === "全部").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 === "全部").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": [{
}], "categoryContent": [{ matcher: matchPattern("https://*/*/meta/*.json").assertValid(),
matcher: matchPattern("https://*/v1/report_channel_data").assertValid(),
onResponseHook: function (response) { onResponseHook: function (response) {
const extend = GMSpiderArgs.fArgs[3]; const extend = GMSpiderArgs.fArgs[3];
let tag = extend?.tag ?? "全部" let tag = extend?.tag ?? "全部"
Array.from(document.querySelectorAll(".left-wrap .tab-box:nth-child(2) .swiper-slide span")) let executed = false;
.find(el => el.textContent === tag).dispatchEvent(new Event("click")); 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", dataKey: "ys_video_sites",
@ -63,10 +78,12 @@ console.log(JSON.stringify(GM_info));
} }
}], }],
"detailContent": [{ "detailContent": [{
dataKey: "meta", matcher: matchPattern("https://*/v1/report_channel_data").assertValid() dataKey: "meta",
matcher: matchPattern("https://*/*/meta/*.json").assertValid(),
}], }],
"searchContent": [{ "searchContent": [{
dataKey: "meta", matcher: matchPattern("https://*/v1/report_channel_data").assertValid() dataKey: "meta",
matcher: matchPattern("https://*/*/meta/*.json").assertValid(),
}], }],
}; };
const GmSpider = (function () { const GmSpider = (function () {
@ -87,6 +104,8 @@ console.log(JSON.stringify(GM_info));
}; };
return { return {
homeContent: function (filter) { homeContent: function (filter) {
//清理cookie
document.cookie.split(";").forEach(function(c) { document.cookie = c.replace(/^ +/, "").replace(/=.*/, "=;expires=" + new Date().toUTCString() + ";path=/"); });
let result = { let result = {
class: [{type_id: "85", type_name: "短剧"}, {type_id: "81", type_name: "电影"}, { class: [{type_id: "85", type_name: "短剧"}, {type_id: "81", type_name: "电影"}, {
type_id: "82", type_id: "82",
@ -145,35 +164,39 @@ console.log(JSON.stringify(GM_info));
}, detailContent: function (ids) { }, detailContent: function (ids) {
let playUrl = []; let playUrl = [];
let vod = {}; let vod = {};
const formatData = JSON.parse(document.getElementById("__NUXT_DATA__").innerHTML); const nuxtData = JSON.parse(JSON.stringify(unsafeWindow.__NUXT__.data));
formatData.forEach((data) => { for (const [key, value] of Object.entries(nuxtData)) {
if (typeof (vod?.vod_id) == "undefined" && typeof (data?.video_desc) === "number") { 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 = {
vod_id: formatData[data.video_site_id], vod_id: ysVideoSite.video_site_id,
vod_name: formatData[data.video_name], vod_name: ysVideoSite.video_name,
vod_content: formatData[data.video_desc], vod_content: ysVideoSite.video_desc,
vod_year: formatData[data.years], vod_year: ysVideoSite.years,
vod_area: formatData[data.area], vod_area: ysVideoSite.area,
vod_actor: formatData[data.main_actor], vod_actor: ysVideoSite.main_actor,
type_name: formatData[data.tag], type_name: ysVideoSite.tag,
vod_play_data: [{ 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; return vod;
}, searchContent: function (key, quick, pg) { }, searchContent: function (key, quick, pg) {
const result = { const result = {
@ -181,30 +204,30 @@ console.log(JSON.stringify(GM_info));
page: pg, page: pg,
pagecount: 1 pagecount: 1
}; };
const formatData = JSON.parse(document.getElementById("__NUXT_DATA__").innerHTML); const nuxtData = JSON.parse(JSON.stringify(unsafeWindow.__NUXT__.data));
console.log(formatData); for (const [key, value] of Object.entries(nuxtData)) {
formatData.forEach((data) => { if (typeof (value.data?.first_video_series) != "undefined") {
if (typeof (data?.first_video_series) === "number") { if (value.data.first_video_series != null) {
let firstVideo = formatData[data.first_video_series]; const firstVideo = value.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];
result.list.push({ result.list.push({
vod_id: formatData[video.video_site_id], vod_id: firstVideo.video_site_id,
vod_name: formatData[video.video_name], vod_name: firstVideo.video_name,
vod_pic: formatData[video.video_vertical_url], vod_pic: firstVideo.video_vertical_url,
vod_remarks: formatData[video.tag], vod_remarks: firstVideo.tag,
vod_year: formatData[video.years] 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; return result;
} }
}; };
@ -214,7 +237,7 @@ console.log(JSON.stringify(GM_info));
let hookResult = {}; let hookResult = {};
ajaxHooker.hook(request => { ajaxHooker.hook(request => {
hookConfigs[GMSpiderArgs.fName].forEach((hookConfig) => { 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); hookConfig.onRequestHook(request);
} }
}); });
@ -226,7 +249,7 @@ console.log(JSON.stringify(GM_info));
dataTodoCount++; 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 => { request.response = res => {
if (typeof hookConfig.onResponseHook === "function") { if (typeof hookConfig.onResponseHook === "function") {
hookConfig.onResponseHook(res); hookConfig.onResponseHook(res);

View File

@ -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));
}
});
})();

View File

@ -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));
}
});
})();

View File

@ -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));
}
});
})();

View File

@ -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));
}
});
})();

View File

@ -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));
}
});
})();

View File

@ -6,7 +6,7 @@
// @author Luomo // @author Luomo
// @match https://m.yfsp.tv/* // @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/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_setValue
// @grant GM_getValue // @grant GM_getValue
// @grant unsafeWindow // @grant unsafeWindow
@ -166,38 +166,34 @@ console.log(JSON.stringify(GM_info));
let episodeKey = ""; let episodeKey = "";
hookResult.playdata.data.list.forEach((item) => { hookResult.playdata.data.list.forEach((item) => {
if (mediaUrl === "" && item.mediaUrl !== "") { if (mediaUrl === "" && item.mediaUrl !== "") {
mediaUrl = `@{base64Decoder:${btoa(item.mediaUrl)}}`; mediaUrl = item.mediaUrl;
episodeKey = item.episodeKey; episodeKey = item.episodeKey;
} }
}) })
let vodPlayUrls = []; let media = [];
if (videodetails.videoType !== 0) { if (videodetails.videoType !== 0) {
if (typeof hookResult.videochoosegather !== "undefined") { if (typeof hookResult.videochoosegather !== "undefined") {
hookResult.videochoosegather.data.list.forEach((item) => { hookResult.videochoosegather.data.list.forEach((item) => {
if (videodetails.episodeTitle === item.episodeTitle) { if (videodetails.episodeTitle === item.episodeTitle) {
vodPlayUrls.push({ media.push({
name: item.episodeTitle, name: item.episodeTitle,
value: { type: "finalUrl",
type: "finalUrl", ext: {
data: { "header": {
"header": { "User-Agent": window.navigator.userAgent,
"User-Agent": window.navigator.userAgent, "Referer": window.location.href
"Referer": window.location.href },
}, "url": mediaUrl
"url": mediaUrl
}
} }
}); });
} else { } else {
vodPlayUrls.push({ media.push({
name: item.episodeTitle, name: item.episodeTitle,
value: { type: "webview",
type: "webview", ext: {
data: { replace: {
replace: { mediaKey: item.mediaKey,
mediaKey: item.mediaKey, episodeKey: item.episodeKey
episodeKey: item.episodeKey
}
} }
} }
}) })
@ -208,17 +204,15 @@ console.log(JSON.stringify(GM_info));
return; return;
} }
} else { } else {
vodPlayUrls.push({ media.push({
name: videodetails.episodeTitle, name: videodetails.episodeTitle,
value: { type: "finalUrl",
type: "finalUrl", ext: {
data: { "header": {
"header": { "User-Agent": window.navigator.userAgent,
"User-Agent": window.navigator.userAgent, "Referer": window.location.href
"Referer": window.location.href },
}, "url": mediaUrl
"url": mediaUrl
}
} }
}) })
} }
@ -233,10 +227,8 @@ console.log(JSON.stringify(GM_info));
vod_content: videodetails.introduce, vod_content: videodetails.introduce,
vod_play_data: [{ vod_play_data: [{
from: "爱壹帆", from: "爱壹帆",
url: vodPlayUrls media: media
}], }]
vod_play_from: "爱壹帆",
vod_play_url: vodPlayUrls.join("#"),
}; };
}, },
playerContent: function (flag, id, vipFlags) { playerContent: function (flag, id, vipFlags) {
@ -248,7 +240,7 @@ console.log(JSON.stringify(GM_info));
}) })
return { return {
type: "finalUrl", type: "finalUrl",
data: { ext: {
"header": { "header": {
"User-Agent": window.navigator.userAgent, "User-Agent": window.navigator.userAgent,
"Referer": window.location.href "Referer": window.location.href