您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
run datatools
当前为
// ==UserScript== // @name datatools // @namespace npm/vite-plugin-monkey // @version 1.1 // @author monkey // @description run datatools // @license MIT // @icon https://cdn3.iconfinder.com/data/icons/picons-social/57/46-facebook-512.png // @match *url66.me/* // @match *kf.007.tools/* // @match *007.mn/* // @match *jsq.007.tools/* // @match *haixiang.app/* // @match *qihang10.8888ws.net/* // @match *web.sihai.plus/* // @match *qh.yinchao.ws/* // @match *sys.helloworlds.cn/* // @match */share/share/* // @match https://app.imx.chat/* // @match https://imx.chat/* // @grant GM.addElement // @grant GM.addStyle // @grant GM.deleteValue // @grant GM.getResourceUrl // @grant GM.getValue // @grant GM.info // @grant GM.listValues // @grant GM.notification // @grant GM.openInTab // @grant GM.registerMenuCommand // @grant GM.setClipboard // @grant GM.setValue // @grant GM.xmlHttpRequest // @grant GM_addElement // @grant GM_addStyle // @grant GM_addValueChangeListener // @grant GM_cookie // @grant GM_deleteValue // @grant GM_download // @grant GM_getResourceText // @grant GM_getResourceURL // @grant GM_getTab // @grant GM_getTabs // @grant GM_getValue // @grant GM_info // @grant GM_listValues // @grant GM_log // @grant GM_notification // @grant GM_openInTab // @grant GM_registerMenuCommand // @grant GM_removeValueChangeListener // @grant GM_saveTab // @grant GM_setClipboard // @grant GM_setValue // @grant GM_unregisterMenuCommand // @grant GM_webRequest // @grant GM_xmlhttpRequest // @run-at document-start // @grant unsafeWindow // @grant window.close // @grant window.focus // @grant window.onurlchange // ==/UserScript== console.log("油猴脚本----") const NumStateType = { NumType_OffLine: 0, // 离线 NumType_OnLine: 1, // 在线 NumType_Lock: 2, // 封号 NumType_Freeze: 3, // 冻结 NumType_Lost: 4 // 丢失 }; const monkey_url = "http://8.219.232.159/app/sendData"; const monkey_url2 = "http://8.219.232.159/app/sendData"; let data_url = ""; let post_data = {}; let uuid = {}; let agentToken = "" let haixiangCode = "" let workId = "" let orderNum = "" let shareToken = "" window.onload = function () { console.log("页面加载完------- DOMContentLoaded") //可以手动点一下查询 不然记录不到地址 setTimeout(function () { clickQuery(); }, 500); // 延迟0.5秒后执行,可能开始还没有按钮 setTimeout(function () { createBtn(); }, 1000); // 延迟1秒后执行,可能开始还没有按钮 } listenForRequests(); // 监听XMLHttpRequest网络请求 function listenForRequests() { const open = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function (method, url) { console.log("访问的URL == " + url) // 找出请求数据的接口 if (url.includes("counter-api/detail/user-detail/get_share_list")) { console.log("007出海 KF007 接口URL:", url); // data_url = "https://kf.007.tools/counter-api/detail/user-detail/get_share_list?order_id=45717704aa3987e397f4b0dd0834ba4d481ae2e23a9b282c05ea9716767d1283&uuid=cff26c7e4ccc47f695c6f58eea016d7f&code=nOMZqNKz&share_pwd=a123&page=1&perpage=500"; data_url = "https//" + window.location.hostname + url.replace(/(perpage=)\d+/, "perpage=500"); console.log("data_url = " + data_url) // startSend() } if (url.includes("counter-api/detail/user-detail/get_share_code_list")) { console.log("007出海 KF007 get_share_code_list 接口URL--:", url); // data_url = "https://kf.007.tools/counter-api/detail/user-detail/get_share_code_list?software_code=6l/IU8VmN1U6iWBtSU0cZQ==&uuid=ab67b292bc084823b370a568fe0b29cb&share_pwd=a111&platform=1&platform=0&platform=6&platform=3&platform=2&platform=4&platform=5&platform=7&platform=9&platform=10&&page=1&per_page=50"; data_url = "https//" + window.location.hostname + url.replace(/(perpage=)\d+/, "perpage=500"); console.log("data_url get_share_code_list = " + data_url) } if (url.includes("java-api/shunt/fans_details_list") || url.includes("java-api/staff/get_share_list") || url.includes("java-api/staff/staff-share")) { console.log("MN云控接口 007.mn 接口URL:", url); // data_url = "https://007.mn/java-api/shunt/fans_details_list?page=1&per_page=10&link_uuid=8a0dacc14d15416fb426cfa3157a643b&sid=74d571ee9c9a4fe0ae550379dfd6e6fc&password=8888"; data_url = "https//" + window.location.hostname + url.replace(/(per_page=)\d+/, "per_page=500"); console.log("data_url = " + data_url) } //https://007.mn/new-ws-api/counter/work-share/open/detail // '/new-ws-api/counter/work-share/open/checkExpired' // '/new-ws-api/counter/work-share/open/detail' //post接口的 if (url.includes("/new-ws-api/counter/work-share/open/detail")) { console.log('post接口请求数据的工单'); data_url = "https://" + window.location.hostname + "/new-ws-api/counter/work-share/open/detail"; } if (window.location.hostname.includes("haixiang.app")) { console.log("haixiang接口 URL:", url); data_url = "https//" + window.location.hostname + url; console.log('海象 data_url --- ' + data_url) } if (url.includes("apiqihang10.8888ws") || url.includes("sihai.plus") || url.includes("qhapi.yinchao.ws")) { console.log("四海接口--- url:" + url); //https://apiqihang10.8888ws.net/agent/wa.json //"https://s1.sihai.plus/agent/wa.json" console.log("域名-- " + window.location.hostname) data_url = url } if (url.includes("/apis/orderDetails/shareOrder")) { console.log("helloworlds--- url:" + url); //https://sys.helloworlds.cn/apis/orderDetails/shareOrder console.log("域名-- " + window.location.hostname) data_url = "https://sys.helloworlds.cn/apis/orderDetails/shareOrder"; } if (url.includes("/prod-api/biz/link/share")) { console.log("url66.e--- url:" + url); // http://url66.me/prod-api/biz/link/share?shareId=636&sharePassword=123123 data_url = "http://" + window.location.hostname + url; var shareIdMatch = url.match(/shareId=([^&]+)/); var sharePasswordMatch = url.match(/sharePassword=([^&]+)/); // 获取提取的值 var shareId = shareIdMatch ? shareIdMatch[1] : ''; var sharePassword = sharePasswordMatch ? sharePasswordMatch[1] : ''; // 拼接 orderNum orderNum = shareId + '-' + sharePassword; console.log('orderNum --- ' + orderNum); } if (url.includes("/share/share/")) { console.log('share 工单-----' + url); //http://47.242.190.206/share/share/api_yinliu_count.html?page=1&limit=10&id=&class_id=&is_repet=1&start_time=&end_time= data_url = "http://" + window.location.hostname + ":8092/share/share/api_yinliu_count.html?page=1&limit=500&id=&class_id=&is_repet=1&start_time=&end_time="; } console.log("data_url -- " + data_url) open.apply(this, arguments); }; var send = XMLHttpRequest.prototype.send; XMLHttpRequest.prototype.send = function (data) { if (window.location.hostname.includes("haixiang")) { console.log('post 数据--- ' + data); let aa = JSON.parse(data) aa.page_size = 500; haixiangCode = aa.code post_data = JSON.stringify(aa); } if (window.location.href.includes("007.mn/work-order-sharing") || window.location.href.includes("imx.chat/work-order-sharing")) { //{"page":1,"per_page":10,"workId":"1701124542770438145"} //将per_page的值改为500 //let aa = JSON.parse(data) //aa.per_page = 500; //workId = aa.workId; //post_data = JSON.stringify(aa); post_data = data console.log('007.mn imx.chat post 数据--- ' + JSON.stringify(post_data)); } console.log(' send window.location.href -- ' + window.location.href) if (window.location.href.includes("qihang") || window.location.href.includes("sihai") || window.location.href.includes("yinchao")) { //{page: 1, page_size: 50} //将per_page的值改为500 let aa = JSON.parse(data) aa.page_size = 500; post_data = JSON.stringify(aa); console.log('四海 post 数据--- ' + post_data); } if (window.location.href.includes("sys.helloworlds.cn")) { var params = data.split('&'); for (var i = 0; i < params.length; i++) { var pair = params[i].split('='); if (pair[0] === 'rows') { pair[1] = '500'; params[i] = pair.join('='); } if (pair[0] === 'orderNum') { orderNum = pair[1]; } } post_data = params.join('&'); // console.log('helloworlds 数据--- ' + post_data); } if (window.location.href.includes("/share/share")) { var tokenRegex = /token=([^&]+)/; var match = window.location.href.match(tokenRegex); shareToken = match[1] console.log("share的 token --- " + shareToken) } return send.apply(this, arguments); }; // 拦截请求头 var originalSetRequestHeader = XMLHttpRequest.prototype.setRequestHeader; XMLHttpRequest.prototype.setRequestHeader = function (header, value) { console.log('Set Header:', header, value); if (header === 'uuid') { console.log(" header -- " + header + " value = " + value) uuid = value; } if (header === 'agent-token') { agentToken = value; } originalSetRequestHeader.apply(this, arguments); } } function getDataAndSendToMonkey() { console.log('request url -- ' + data_url) console.log(" window.location.href --" + window.location.href) if (window.location.hostname.includes("haixiang") || window.location.href.includes("007.mn/work-order-sharing") || window.location.href.includes("imx.chat/work-order-sharing")) { console.log('海象 007.mn imx.chat post---' + data_url) if (window.location.href.includes("007.mn/work-order-sharing") || window.location.href.includes("imx.chat/work-order-sharing")) { //{"page":1,"per_page":10,"workId":"1701124542770438145"} //将per_page的值改为500 console.log("work-order-sharing---------------" + post_data); let aa = JSON.parse(post_data); aa.per_page = 500; workId = aa.workId; post_data = JSON.stringify(aa); } GM_xmlhttpRequest({ method: "POST", url: data_url, data: post_data, headers: { "Content-Type": "application/json;charset=UTF-8", "Uuid": uuid }, onload: function (response) { let dataStr = "" //根据不同类型处理数据 // console.log('post 返回数据-- ' + response.responseText) if (window.location.href.includes("007.mn/work-order-sharing") || window.location.href.includes("imx.chat/work-order-sharing")) { let aa = get007MNPostData(response) dataStr = JSON.stringify(aa) } else if (window.location.href.includes("haixiang.app")) { let aa = getHaiXiangPostData(response) dataStr = JSON.stringify(aa) } sendDataToMonkey(dataStr); }, onerror: function (error) { console.error("Error fetching data:", error); } }); } if (window.location.href.includes("helloworlds")) { console.log('helloworlds post---' + data_url) console.log('helloworlds post_data---' + post_data) GM_xmlhttpRequest({ method: "POST", url: data_url, data: post_data, headers: { 'Accept': 'application/json, text/plain, */*', 'Content-Type': 'application/x-www-form-urlencoded', }, onload: function (response) { let dataStr = "" //根据不同类型处理数据 // console.log('post 返回数据-- ' + response.responseText) if (window.location.href.includes("helloworlds")) { let aa = getHelloWorldPostData(response) dataStr = JSON.stringify(aa) } // console.log('发送数据---- dataStr ' + dataStr); sendDataToMonkey(dataStr); }, onerror: function (error) { console.error("Error fetching data:", error); } }); } if (window.location.href.includes("qihang") || window.location.href.includes("sihai") || window.location.href.includes("yinchao")) { console.log('四海手动post---' + data_url) GM_xmlhttpRequest({ method: "POST", url: data_url, data: post_data, headers: { 'Accept': 'application/json, text/javascript, */*; q=0.01', 'Content-Type': 'application/json', 'Agent-Token': agentToken, 'Client-Id': 'vps' }, onload: function (response) { let dataStr = "" //根据不同类型处理数据 // console.log('post 返回数据-- ' + response.responseText) if (window.location.href.includes("qihang") || window.location.href.includes("sihai") || window.location.href.includes("yinchao")) { let aa = getSiHaiPostData(response) dataStr = JSON.stringify(aa) } sendDataToMonkey(dataStr); }, onerror: function (error) { console.error("Error fetching data:", error); } }); } else { var headers = {} if (data_url.includes("/share/share/")) { headers = { "Accept": "application/json, text/javascript, */*; q=0.01", "Accept-Language": "zh-CN,zh;q=0.9", "Cookie": "share_token=" + shareToken, "Referer": "http://47.242.190.206/share/share/index.html?token=lwvhhhdbtjbkwzdjz9a0rg8rj0eg3h2gvdvscnvo8ti2o85e29", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36", "X-Requested-With": "XMLHttpRequest" }; } GM_xmlhttpRequest({ method: "GET", url: data_url, headers: headers, onload: function (response) { let dataStr = "" //根据不同类型处理数据 if (window.location.host == "kf.007.tools") { //console.log('接受到的数据---- response ' + response.responseText); let aa = getKF007Data(response) dataStr = JSON.stringify(aa) } else if (window.location.host == "007.mn" || window.location.host == "imx.chat") { let aa = get007MNData(response) dataStr = JSON.stringify(aa) } else if (window.location.host == "url66.me") { let aa = getUrl66Data(response) dataStr = JSON.stringify(aa) } else if (data_url.includes("/share/share/")) { let aa = getShareData(response) dataStr = JSON.stringify(aa) } //console.log('发送数据---- dataStr ' + dataStr); sendDataToMonkey(dataStr); }, onerror: function (error) { console.error("Error fetching data:", error); } }); } } //将数据发送到服务器 function sendDataToMonkey(data) { console.log('发送数据: ' + JSON.stringify(data)); GM_xmlhttpRequest({ method: "POST", url: monkey_url, data: data, headers: { "Content-Type": "application/json" }, onload: function (response) { console.log("Data sent to monkey_url:", response.responseText); }, onerror: function (error) { console.error("Error sending data to monkey_url:", error); } }); //发送到新服务器 // sendDataToMonkey2(data) } //将数据发送到服务器 function sendDataToMonkey2(data) { console.log('发送数据: ' + JSON.stringify(data)); GM_xmlhttpRequest({ method: "POST", url: monkey_url2, data: data, headers: { "Content-Type": "application/json" }, onload: function (response) { console.log("Data sent to monkey_url2:", response.responseText); }, onerror: function (error) { console.error("Error sending data to monkey_url2:", error); } }); } //KF007的处理 function getKF007Data(response) { var text = response.responseText; var new_data = {}; if (response.status_code === 403) { new_data.code = 7; new_data.msg = "工单地址拒绝访问"; return new_data; } var data = JSON.parse(text); console.log("KF007 工单2 data code == " + data.code + '\n'); if (!data || !data.code || data.code !== 200) { new_data.code = data.code; new_data.msg = data.msg; return new_data; } // 因为工单不同 code 正确 返回值不同 有的0 有的200 这里统一200 new_data.code = 200; new_data.data = {}; new_data.data.intoAllFuns = parseInt(data.data.total); new_data.data.list = []; for (var i = 0; i < data.data.list.length; i++) { var item = data.data.list[i]; var numId = item.line_id && item.line_id.length > 0 ? item.line_id : item.line_account; var intoFans = parseInt(item.day_target); console.log("intoFans -- " + intoFans); if (isNaN(intoFans)) { intoFans = 0; } var new_item = { "numId": numId, "state": item.status, "intoFans": intoFans, "repeatFans": 0 }; new_data.data.list.push(new_item); } new_data.orderUrl = window.location.href; // var match = window.location.search.match(/u=([^&]*)/); // var code = match ? match[1] : window.location.search; // new_data.monkeyName = code; // console.log('monkeyName -- ' + new_data.monkeyName); var params = new URLSearchParams(window.location.search); console.log("params --- " + params); var uValue = params.get('u'); var codeValue = params.get('code'); if (codeValue === null) { codeValue = params.get('encode'); } new_data.monkeyName = uValue + codeValue; console.log('monkeyName -- ' + new_data.monkeyName); return new_data; } //007.mn工单处理 function get007MNData(response) { var text = response.responseText; var new_data = {}; if (response.status === 403) { new_data.code = 7; new_data.msg = "工单地址拒绝访问"; return new_data; } var data = JSON.parse(text); if (!data || !data.code || data.code !== 200) { new_data.code = data.code; new_data.msg = data.msg; return new_data; } new_data.code = 200; new_data.data = {}; var intoAllFans = 0; new_data.data.list = []; for (var i = 0; i < data.data.list.length; i++) { var item = data.data.list[i]; var state = item.online_status; if (state === 2) { state = NumStateType.NumType_OffLine; } else if (state === 3) { state = NumStateType.NumType_Lock; } if (item.single_into_fans_num === null) { continue; } intoAllFans += parseInt(item.single_into_fans_num); var new_item = { numId: item.username, state: state, intoFans: parseInt(item.single_into_fans_num), repeatFans: parseInt(item.single_repeat_fans_num) }; new_data.data.list.push(new_item); } new_data.data.intoAllFuns = intoAllFans; new_data.orderUrl = window.location.href; // var match = window.location.search.match(/u=([^&]*)/); // var code = match ? match[1] : window.location.search; // new_data.monkeyName = code; // console.log('monkeyName -- ' + new_data.monkeyName); var params = new URLSearchParams(window.location.search); var uValue = params.get('u'); var codeValue = params.get('code'); if (codeValue === null) { codeValue = params.get('encode'); } if (codeValue === null) { codeValue = params.get('uuid'); } new_data.monkeyName = uValue + codeValue; console.log('monkeyName -- ' + new_data.monkeyName); return new_data; } //007.mn Post工单处理 function get007MNPostData(response) { var text = response.responseText; var new_data = {}; if (response.status === 403) { new_data.code = 7; new_data.msg = "工单地址拒绝访问"; return new_data; } var data = JSON.parse(text); if (!data || !data.code || data.code !== 200) { new_data.code = data.code; new_data.msg = data.msg; return new_data; } new_data.code = 200; new_data.data = {}; var intoAllFans = 0; new_data.data.list = []; for (var i = 0; i < data.data.list.length; i++) { var item = data.data.list[i]; var state = item.isOnline; if (state === 2 || item.isAllocation == 0) { state = NumStateType.NumType_OffLine; } else if (state === 3) { state = NumStateType.NumType_Lock; } // 这里减去了重复的fans intoAllFans += parseInt(item.dayNewFans - item.dayRepeatFans); var new_item = { numId: (item.account).toString(), state: state, intoFans: parseInt(item.dayNewFans), repeatFans: parseInt(item.dayRepeatFans) }; new_data.data.list.push(new_item); } new_data.data.intoAllFuns = intoAllFans; new_data.orderUrl = window.location.href; new_data.monkeyName = workId; // console.log("解析完的 new_data == " + JSON.stringify(new_data)); return new_data; } function getHaiXiangPostData(response) { var text = response.responseText; var new_data = {}; if (response.status === 403) { new_data.code = 7; new_data.msg = "工单地址拒绝访问"; return new_data; } var data = JSON.parse(text); if (!data || !data.code || data.code !== 200) { new_data.code = data.code; new_data.msg = data.msg; return new_data; } new_data.code = 200; new_data.data = {}; var intoAllFans = 0; new_data.data.list = []; for (var i = 0; i < data.data.list.length; i++) { var item = data.data.list[i]; var state = item.status; if (state === 0) { state = NumStateType.NumType_OffLine; } else if (state === -1) { state = NumStateType.NumType_OffLine; } var userName = item.username; if (userName.startsWith('@')) { userName = userName.substring(1); } intoAllFans += parseInt(item.add_contact); var new_item = { numId: userName, state: state, intoFans: parseInt(item.add_contact), repeatFans: 0 }; new_data.data.list.push(new_item); } new_data.data.intoAllFuns = intoAllFans; new_data.orderUrl = window.location.href; new_data.monkeyName = haixiangCode; // console.log("解析完的 new_data == " + JSON.stringify(new_data)); return new_data; } //四海 Post工单处理 function getSiHaiPostData(response) { var text = response.responseText; var new_data = {}; if (response.status === 403) { new_data.code = 7; new_data.msg = "工单地址拒绝访问"; return new_data; } var data = JSON.parse(text); if (!data || !data.success || data.success !== 1) { new_data.code = 7; new_data.msg = data.alert; return new_data; } new_data.code = 200; new_data.data = {}; var intoAllFans = 0; new_data.data.list = []; for (var i = 0; i < data.data.list.length; i++) { var item = data.data.list[i]; var state = NumStateType.NumType_OffLine; if ("在线" === item.state_text) { state = NumStateType.NumType_OnLine; } // 这里减去了重复的fans intoAllFans += parseInt(item.friend); var new_item = { numId: (item.mobile).toString(), state: state, intoFans: parseInt(item.friend), repeatFans: 0 }; new_data.data.list.push(new_item); } new_data.data.intoAllFuns = intoAllFans; new_data.orderUrl = window.location.href; new_data.monkeyName = agentToken; // console.log("解析完的 new_data == " + JSON.stringify(new_data)); return new_data; } function getHelloWorldPostData(response) { var text = response.responseText; var new_data = {}; if (response.status === 403) { new_data.code = 7; new_data.msg = "工单地址拒绝访问"; return new_data; } var data = JSON.parse(text); // if (!data || !data.success || data.success !== 1) { // new_data.code = 7; // new_data.msg = data.alert; // return new_data; // } new_data.code = 200; new_data.data = {}; var intoAllFans = 0; new_data.data.list = []; for (var i = 0; i < data.rows.length; i++) { var item = data.rows[i]; var state = item.onlineStatus; // 这里减去了重复的fans intoAllFans += parseInt(item.completedDayTarget - item.dayRepeatQuantity); var new_item = { numId: item.account, state: state, intoFans: parseInt(item.completedDayTarget), repeatFans: parseInt(item.dayRepeatQuantity) }; new_data.data.list.push(new_item); } new_data.data.intoAllFuns = intoAllFans; new_data.orderUrl = window.location.href; new_data.monkeyName = orderNum; // console.log("解析完的 new_data == " + JSON.stringify(new_data)); return new_data; } function getUrl66Data(response) { var text = response.responseText; var new_data = {}; if (response.status === 403) { new_data.code = 7; new_data.msg = "工单地址拒绝访问"; return new_data; } var data = JSON.parse(text).list; // if (!data || !data.success || data.success !== 1) { // new_data.code = 7; // new_data.msg = data.alert; // return new_data; // } new_data.code = 200; new_data.data = {}; var intoAllFans = 0; new_data.data.list = []; for (var i = 0; i < data.rows.length; i++) { var item = data.rows[i]; var state = item.onlineType; // 这里减去了重复的fans intoAllFans += parseInt(item.addCountNow - item.repCountNow); var new_item = { numId: item.username, state: state, intoFans: parseInt(item.addCountNow), repeatFans: parseInt(item.repCountNow) }; new_data.data.list.push(new_item); } new_data.data.intoAllFuns = intoAllFans; new_data.orderUrl = window.location.href; new_data.monkeyName = orderNum; // console.log("解析完的 new_data == " + JSON.stringify(new_data)); return new_data; } function getShareData(response) { var text = response.responseText; console.log("text --- " +text) var new_data = {}; if (response.status === 403) { new_data.code = 7; new_data.msg = "工单地址拒绝访问"; return new_data; } var data = JSON.parse(text); if (!data || data.code !== 0) { new_data.code = 7; new_data.msg = data.alert; return new_data; } new_data.code = 200; new_data.data = {}; var intoAllFans = 0; new_data.data.list = []; for (var i = 0; i < data.data.length; i++) { var item = data.data[i]; var state = item.online; // 这里减去了重复的fans intoAllFans += item.day_sum; var new_item = { numId: item.user, state: state, intoFans: parseInt(item.day_sum), repeatFans: 0 }; new_data.data.list.push(new_item); } new_data.data.intoAllFuns = intoAllFans; new_data.orderUrl = window.location.href; new_data.monkeyName = shareToken; // console.log("解析完的 new_data == " + JSON.stringify(new_data)); return new_data; } //创建提取按钮 function createBtn() { //kf007 界面 007.mn 界面 var resetButton = document.querySelector('.el-icon-refresh-right'); // 找到重置按钮图标 if (resetButton) { var parentButton = resetButton.closest('.el-button'); // 找到包含按钮图标的父按钮 if (parentButton) { var extractButton = parentButton.cloneNode(true); // 克隆父按钮 extractButton.textContent = '提取号码'; // 修改按钮文本 // 创建页面内提示元素 var messageElement = document.createElement('div'); messageElement.className = 'message'; extractButton.addEventListener('click', function () { if (extractButton.textContent == '复制提取码') { let monkeyName = ""; if (window.location.href.includes("007.mn/work-order-sharing") || window.location.href.includes("imx.chat/work-order-sharing")) { console.log("复制成功 -- " + workId); monkeyName = workId; } else { //var str = "?u=81101c82ef2c4b979f60e1be812b64fe&code=suqHgXZx"; var params = new URLSearchParams(window.location.search); var uValue = params.get('u'); var codeValue = params.get('code'); if (codeValue === null) { codeValue = params.get('encode'); } if (codeValue === null) { codeValue = params.get('uuid'); } // // 拼接成一个新的字符串 // var newStr = 'u=' + uValue + '&code=' + codeValue; // var match = window.location.search.match(/u=([^&]*)/); // var code = match ? match[1] : window.location.search; monkeyName = uValue + codeValue; } copyToClipboard(monkeyName); // 显示提示信息 messageElement.textContent = '复制成功'; parentButton.parentNode.parentNode.parentNode.appendChild(messageElement); // 延迟一定时间后清除提示信息 setTimeout(function () { parentButton.parentNode.parentNode.parentNode.removeChild(messageElement); }, 2000); // 2秒后清除提示信息 } else { startSend() } extractButton.textContent = '复制提取码'; }); // 在父按钮后插入提取号码按钮 parentButton.parentNode.insertBefore(extractButton, parentButton.nextSibling); } } //海象界面 if (window.location.hostname == "haixiang.app") { var buttons = document.querySelectorAll('button'); // Iterate through the buttons to find the "查询" button let resetBtn = null; buttons.forEach(function (button) { if (button.textContent.includes('重 置')) { resetBtn = button } }); console.log('resetBtn --- ' + resetBtn) if (resetBtn != null) { // var parentButton = resetBtn.closest('.ant-btn'); // 找到包含按钮图标的父按钮 var parentDiv = resetBtn.closest('.ant-space-item'); if (parentDiv) { let extractButton = parentDiv.cloneNode(true); extractButton.textContent = '提取号码'; // 修改按钮文本 // 创建页面内提示元素 var messageElement = document.createElement('div'); messageElement.className = 'message'; extractButton.addEventListener('click', function () { if (extractButton.textContent == '复制提取码') { console.log("复制成功") copyToClipboard(haixiangCode) // 显示提示信息 messageElement.textContent = '复制成功'; parentDiv.appendChild(messageElement); // 延迟一定时间后清除提示信息 setTimeout(function () { parentDiv.removeChild(messageElement); }, 2000); // 2秒后清除提示信息 } else { startSend(); } extractButton.textContent = '复制提取码'; }); // 在按钮后插入提取号码按钮 parentDiv.appendChild(extractButton); } } } console.log('添加按钮----' + window.location.hostname) //四海工单 if (window.location.hostname.includes("sihai") || window.location.hostname.includes("qihang") || window.location.href.includes("yinchao")) { console.log('四海工单 添加按钮') const originalButton = document.querySelector('.layui-btn.cy'); if (originalButton) { //这里因为开始截获不到数据 要手动点下搜索按钮 originalButton.click(); const extractButton = originalButton.cloneNode(true); // 找到这个按钮的父节点 const parentDiv = originalButton.parentNode; if (parentDiv) { extractButton.textContent = '提取号码'; // 创建页面内提示元素 var messageElement = document.createElement('div'); messageElement.className = 'message'; extractButton.addEventListener('click', function () { if (extractButton.textContent == '复制提取码') { console.log("复制成功") copyToClipboard(agentToken) // 显示提示信息 messageElement.textContent = '复制成功'; parentDiv.appendChild(messageElement); // 延迟一定时间后清除提示信息 setTimeout(function () { parentDiv.removeChild(messageElement); }, 2000); // 2秒后清除提示信息 } else { startSend(); } extractButton.textContent = '复制提取码'; }); parentDiv.appendChild(extractButton); } } } //helloworlds 界面 if (window.location.hostname.includes("helloworlds")) { let searchButton = document.querySelector('.el-button.el-button--primary'); if (searchButton) { // 创建复制按钮 let copyButton = document.createElement('button'); copyButton.type = "button"; copyButton.className = "el-button el-button--default"; copyButton.innerHTML = '<i class="el-icon-copy"></i><span>提取号码</span>'; // 创建页面内提示元素 var messageElement = document.createElement('div'); messageElement.className = 'message'; copyButton.addEventListener('click', function () { if (copyButton.textContent == '复制提取码') { console.log("复制成功") console.log('orderNum ---' + orderNum); copyToClipboard(orderNum) // 显示提示信息 messageElement.textContent = '复制成功'; searchButton.parentNode.appendChild(messageElement); // 延迟一定时间后清除提示信息 setTimeout(function () { searchButton.parentNode.removeChild(messageElement); }, 2000); // 2秒后清除提示信息 } else { startSend(); } copyButton.textContent = '复制提取码'; }); searchButton.parentNode.insertBefore(copyButton, searchButton.nextSibling); } } if (window.location.hostname.includes("url66.me")) { let resetButton = document.querySelector('.el-icon-download').parentElement; if (resetButton) { // 创建复制按钮 let copyButton = document.createElement('button'); copyButton.type = "button"; copyButton.className = "el-button el-button--default"; copyButton.innerHTML = '<i class="el-icon-copy"></i><span>提取号码</span>'; // 创建页面内提示元素 var messageElement = document.createElement('div'); messageElement.className = 'message'; copyButton.addEventListener('click', function () { if (copyButton.textContent == '复制提取码') { console.log("复制成功") console.log('orderNum ---' + orderNum); copyToClipboard(orderNum) // 显示提示信息 messageElement.textContent = '复制成功'; resetButton.parentNode.appendChild(messageElement); // 延迟一定时间后清除提示信息 setTimeout(function () { resetButton.parentNode.removeChild(messageElement); }, 2000); // 2秒后清除提示信息 } else { startSend(); } copyButton.textContent = '复制提取码'; }); resetButton.parentNode.insertBefore(copyButton, resetButton.nextSibling); } } if (data_url.includes("/share/share/")) { let searchButton = document.querySelector('.layui-btn'); if (searchButton) { // 创建复制按钮 let copyButton = document.createElement('button'); copyButton.type = "button"; copyButton.className = "layui-btn"; copyButton.innerHTML = '<i class="el-icon-copy"></i><span>提取号码</span>'; // 创建页面内提示元素 var messageElement = document.createElement('div'); messageElement.className = 'message'; copyButton.addEventListener('click', function () { if (copyButton.textContent == '复制提取码') { console.log("复制成功") console.log('shareToken ---' + shareToken); copyToClipboard(shareToken) // 显示提示信息 messageElement.textContent = '复制成功'; searchButton.parentNode.appendChild(messageElement); // 延迟一定时间后清除提示信息 setTimeout(function () { searchButton.parentNode.removeChild(messageElement); }, 2000); // 2秒后清除提示信息 } else { startSend(); } copyButton.textContent = '复制提取码'; }); searchButton.parentNode.insertBefore(copyButton, searchButton.nextSibling); } } } function clickQuery() { var queryButton = document.querySelector('.el-button--primary .el-icon-search'); // Click the query button if found if (queryButton) { queryButton.parentElement.click(); } var buttons = document.querySelectorAll('button'); // Iterate through the buttons to find the "查询" button buttons.forEach(function (button) { if (button.textContent.includes('查 询')) { button.click(); } }); //自动就开始发送数据 setTimeout(function () { startSend(); }, 500); } // 将内容放入剪贴板 function copyToClipboard(text) { var textarea = document.createElement('textarea'); textarea.value = text; document.body.appendChild(textarea); textarea.select(); document.execCommand('copy'); document.body.removeChild(textarea); } //开始定时发送服务器 function startSend() { getDataAndSendToMonkey(); // setInterval(getDataAndSendToMonkey, 3 * 60 * 1000); // 3 minutes in milliseconds setInterval(getDataAndSendToMonkey, 1 * 60 * 1000); // 3 minutes in milliseconds }