在您安裝前,Sleazy Fork希望您了解本腳本包含“可能不受歡迎的功能”,可能幫助腳本的作者獲利,而不能給你帶來任何收益。
此腳本只有在您 付費後才能使用全部的功能。 Sleazy Fork尚未支付費用,因此無法驗證使用需要付費的商品,也無法幫助您獲得退款。
草榴社區永久vip vip視頻隨意觀看
目前為
// ==UserScript== // @name 草榴社区永久vip vip视频无限制观看 // @name:zh-TW 草榴社區永久vip vip視頻無限制觀看 // @namespace http://tampermonkey.net/ // @version 2.1.7 // @description 草榴社区永久vip vip视频随意观看 // @description:zh-TW 草榴社區永久vip vip視頻隨意觀看 // @author FFFFFFeng // @include /^.+://.*cl.*\..*$/ // @icon https://www.google.com/s2/favicons?domain=swag555.xyz // @grant none // @antifeature payment // ==/UserScript== let kitty_emojiList = ["😃","😄","😁","😆","😅","🤣","😂","🙂","🙃","🫠","😉","😊","😇","😕","🫤","😟","🙁","☹","😯","😲","🥺","🥹","😦","😧","😨","😰","😥","😢","😭","😱","😖","😣","😞","😓","😩","😫","😤","😡","😠"] let kitty_emojiIndex = 0 let kitty_StatusColor = { success: "#67C23A", warning: "#E6A23C", info: "#909399", danger: "#F56C6C", '200': "#67C23A", '300': "#E6A23C", '400': "#909399", '500': '#F56C6C' } let kitty_config = { name: "草榴社区脚本", id: "cl", version: "2.1.7", homePageName: "kitty猫", homePageUrl: "www.kittymao.xyz", update: 3, logListMaxLength: 6, logItemLength: 20, useMethodUrlList: ["www.kittymao.xyz", "http://124.223.114.203:5000/jbs.html"], payUrlList: ["shop.kittymao.xyz", "http://124.223.114.203"], updateUrl: "https://sleazyfork.org/zh-CN/scripts/440819-cao", requestHostList: ["https://ci.kittymao.xyz","https://103.241.72.37:3007"], } let kitty_isrun = { getNewVersion: false } let kitty_tabIndex = 0 let kitty_logList = [] let kitty_successHost = "" function kitty_setCookie(cname, cvalue, exdays) { var d = new Date(); d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000)); var expires = "expires=" + d.toGMTString(); document.cookie = cname + "=" + cvalue + "; " + expires; } function kitty_setScriptName(name) { } function kitty_insertStyle() { let style = document.createElement("style") style.innerHTML = ` /* 整体-start */ #kitty_vipPanel { width: 310px; height: 500px; box-shadow: 0 0 0 1px rgb(0 0 0 / 5%), 0 2px 4px 1px rgb(0 0 0 / 9%); border-left: 1px solid transparent; border-right: none; border-top: 1px solid transparent; border-bottom: 1px solid transparent; background-color: #FFFFFF; position: fixed; left: 6px; bottom: 6px; z-index: 99999; font-size: 1rem; --script-panel-main-color: #004c7d; } .kitty_panelMain { font-size: 0.85em; } .hitty_hiddenPanel { left: -310px !important; } /* 整体-end */ /* panelHead-start */ .kitty_panelHead { display: flex; border-bottom: 1px solid #ececec; } .kitty_panelHead>div { color: #444; padding: 0 10px; height: 40px; line-height: 40px; box-sizing: border-box; user-select: none; text-align: center; width: 76px; font-size: 1em; } .kitty_panelHead>div:not(.kitty_headDivActive):hover { border-bottom: 3px solid #ccc; cursor: pointer; } .kitty_headDivActive { border-bottom: 3px solid var(--script-panel-main-color); color: #444; font-weight: bold; } /* panelHead-end */ /* 界面显示按钮 */ .kitty_showPanelBtn { position: absolute; left: 320px; bottom: 20px; width: 60px; height: 40px; line-height: 40px; color: var(--script-panel-main-color); user-select: none; background-color: #FFFFFF; position: absolute; left: 320; bottom: 20px; display: none; cursor: pointer; border-radius: 5px; } /* 身体 */ .kitty_panelBody { padding: 0 10px; } /* 输入框-start */ .kitty_searchInput { width: 98%; border-radius: 24px; box-shadow: 0 0 0 1px rgb(0 0 0 / 5%), 0 2px 4px 1px rgb(0 0 0 / 9%); height: 40px; border-left: 1px solid transparent; border-right: none; border-top: 1px solid transparent; border-bottom: 1px solid transparent; overflow: hidden; margin: 0 auto; margin-top: 40px; margin-bottom: 50px; display: flex; } .kitty_searchInput:hover { border-top-left-radius: 24px; box-shadow: 0 0 0 1px rgb(0 0 0 / 10%), 0 2px 4px 1px rgb(0 0 0 / 18%); border-left: 1px solid transparent; border-right: none; border-top: 1px solid transparent; border-bottom: 1px solid transparent; } .kitty_searchInput input { height: 100%; border: 0; outline: 0; padding: 0 10px; color: black; width: 100%; } /* 输入框-end */ /* go按钮-start */ .kitty_goToVipBtn { color: #FFFFFF; font-weight: bold; background-color: var(--script-panel-main-color); height: 100px; width: 100px; border-radius: 50px; text-align: center; line-height: 100px; margin: 20px auto; box-shadow: 0 0 0 1px rgb(0 0 0 / 5%), 0 2px 4px 1px rgb(0 0 0 / 9%); user-select: none; } .kitty_goToVipBtn:hover { cursor: pointer; box-shadow: 0 0 0 0 rgb(0 0 0 / 5%), 0 2px 4px 1px rgb(0 0 0 / 18%); -webkit-box-shadow: 0 0 0 0 rgb(0 0 0 / 5%), 0 2px 4px 1px rgb(0 0 0 / 18%); -moz-box-shadow: 0 0 0 0 rgba(0,0,0,.05),0 2px 4px 1px rgba(0,0,0,.18); } /* 动画 */ @keyframes kitty_float { 0% { transform: translateY(0px); } 5% { transform: translateY(-10px); } 10%,100% { transform: translateY(0px); } } .kitty_navy { position: relative; } .kitty_navy span { position: relative; display: inline-block; color: white; animation: kitty_float 9s ease-in-out infinite; animation-delay: 2s; font-size: 1.5em; } /* go按钮-end */ .kitty_logOutput { color: #71777d; font-size: 0.9em; margin-top: 50px; } ` document.querySelector("head").appendChild(style); } function kitty_createPanel() { let panel = document.createElement("div") panel.setAttribute("id", "kitty_vipPanel") panel.innerHTML = ` <div class="kitty_showPanelBtn">>>显示</div> <div class="kitty_panelMain"> <div class="kitty_panelHead"> <div class="kitty_headDivActive">获取权限</div> <div>令牌登录</div> <div>使用指南</div> <div>支付</div> </div> <div class="kitty_panelBody kitty_panelBody_0"> <div class="kitty_searchInput"> <input id="kitty_txm" type="text" placeholder=""> </div> <div class="kitty_goToVipBtn kitty_navy"> <span>G</span> <span>O</span> <span>!</span> </div> <div class="kitty_logOutput"> <div>脚本--><span class="kitty_scriptName"></span>-<span class="kitty_version"></span>-<span class="kitty_update"></span></div> <div>主页--><a class="kitty_homepage" target="_blank" href="">主页地址</a></div> <div>邮箱-->JamJamToday@protonmail.com</div> <div>操作--><span style="color: red;cursor:pointer;" class="kitty_hiddenPanelBtn">点此隐藏此脚本操作界面<<</span></div> <div class="kitty_logList"> </div> </div> </div> <div class="kitty_panelBody kitty_panelBody_1" style="display:none;"> <p>暂未开放</p> </div> <div class="kitty_panelBody kitty_panelBody_2" style="display:none;"> <p>+ 使用方法线路1: <a target="_blank" href="https://www.kittymao.xyz">www.kittymao.xyz</a></p> <p>+ 使用方法线路2: <a target="_blank" href="http://124.223.114.203:5000/jbs.html">使用教程</a></p> </div> <div class="kitty_panelBody kitty_panelBody_3" style="display:none;"> <p>+ 支付线路1: <a target="_blank" href="https://shop.kittymao.xyz">shop.kittymao.xyz</a></p> <p>+ 支付线路2: <a target="_blank" href="http://124.223.114.203">kitty猫商店</a></p> </div> </div> ` document.body.appendChild(panel) } function kitty_eventBind() { let tabs = document.querySelectorAll(".kitty_panelHead>div") for (let i = 0; i < tabs.length; i++) { tabs[i].addEventListener("click", function() { for (let ii = 0; ii < tabs.length; ii++) { tabs[ii].className = "" } tabs[i].className = "kitty_headDivActive" kitty_changeTab(i) }) } document.querySelector(".kitty_hiddenPanelBtn").addEventListener("click", function() { kitty_hiddenPanel() }) document.querySelector(".kitty_showPanelBtn").addEventListener("click", function() { kitty_showPanel() }) let gets = document.querySelectorAll(".kitty_goToVipBtn") gets[0].addEventListener("click", function() { kitty_getPermissionStart() }) } function kitty_changeTab(index) { kitty_tabIndex = index let panelBodys = document.querySelectorAll(".kitty_panelBody") if(!panelBodys[kitty_tabIndex]) { return } for (let i = 0; i < panelBodys.length; i ++) { panelBodys[i].style.display = "none" } panelBodys[kitty_tabIndex].style.display = "block" } function kitty_hiddenPanel() { document.querySelector("#kitty_vipPanel").className = "hitty_hiddenPanel" document.querySelector(".kitty_showPanelBtn").style.display = "block" } function kitty_showPanel() { document.querySelector("#kitty_vipPanel").className = "" document.querySelector(".kitty_showPanelBtn").style.display = "none" } function kitty_bodyChange() { let bodys = document.querySelectorAll(".kitty_panelBody") bodys.forEach(item => { item.style.display = "none" }) } function kitty_getPermissionStart() { let emoLength = kitty_emojiList.length let txm = document.querySelector("#kitty_txm").value if (!txm) { kitty_logListPush(`请输入卡密,然后点击GO按钮${kitty_emojiList[kitty_emojiIndex]}`, "info") kitty_emojiIndex++ if (kitty_emojiIndex>=emoLength) { kitty_emojiIndex = 0; } return } localStorage.setItem("kitty_txm", txm) kitty_getSuccessHost(); kitty_getPermission(0, txm, false); } function kitty_getSuccessHost() { let successHost = localStorage.getItem("kitty_requestSuccessHost") if(successHost) { let findIndex = kitty_config.requestHostList.indexOf(successHost); if (findIndex!=-1) { kitty_config.requestHostList.splice(findIndex, 1); kitty_config.requestHostList.unshift(successHost); } } console.log(kitty_config.requestHostList) } function kitty_getHost(index) { return kitty_config.requestHostList[index] } function kitty_getStatusTypeText(type) { let typeText = "提示"; switch(type){ case "success": typeText = "成功" break case "warning": typeText = "警告" break case "info": typeText = "信息" break case "danger": typeText = "失败" break case '200': typeText = "成功" break case '300': typeText = "警告" break case '400': typeText = "信息" break case '500': typeText = "失败" break } return typeText; } function kitty_logListPush(item, type) { if (kitty_logList.length >= kitty_config.logListMaxLength) { kitty_logListShift() } let stringLength = item.length let start = 0; let end = kitty_config.logItemLength-1 let headLine = true while(stringLength>=0) { let typeText = `${kitty_getStatusTypeText(type)}-->`; let styleColor = "" if (type) { styleColor = type?`color: ${kitty_StatusColor[type]}`:""; } kitty_logList.push(`<span style="${styleColor}">${headLine?typeText:'<span style="opacity: 0;">续行--</span>>'}${item.substring(start, end)}</span>`) start = end end += end stringLength = stringLength-kitty_config.logItemLength headLine = false } kitty_showLogList() } function kitty_logListShift() { kitty_logList.shift(); kitty_showLogList(); } function kitty_showLogList() { let innerhtml = ""; let kitty_logListDiv = document.getElementsByClassName("kitty_logList")[0] kitty_logList.forEach(item => { innerhtml+=`<div>${item}</div>` }) kitty_logListDiv.innerHTML = innerhtml; } function kitty_setConfig() { document.getElementsByClassName("kitty_scriptName")[0].innerHTML = kitty_config.name; document.getElementsByClassName("kitty_version")[0].innerHTML = `v${kitty_config.version}`; let homepage = document.getElementsByClassName("kitty_homepage")[0]; homepage.innerHTML = kitty_config.homePageName+`(${kitty_config.homePageUrl})` homepage.href = "https://"+kitty_config.homePageUrl if (kitty_config.update===1) { let versionSpan = document.getElementsByClassName("kitty_update")[0]; versionSpan.innerHTML = `已最新`; versionSpan.style = `color: ${kitty_StatusColor.success};`; } else if (kitty_config.update===2) { let versionSpan = document.getElementsByClassName("kitty_update")[0]; versionSpan.innerHTML = `<span class="kitty_toNewVersion" style="user-select: none;cursor: pointer;">点此更新</span>`; versionSpan.style = `color: ${kitty_StatusColor.warning};`; document.querySelector(".kitty_toNewVersion").addEventListener("click", function() { window.open("") }) } else { let versionSpan = document.getElementsByClassName("kitty_update")[0]; versionSpan.innerHTML = `<span class="kitty_checkVersion" style="user-select: none;cursor: pointer;">检查更新</span>`; versionSpan.style = `color: ${kitty_StatusColor.warning};`; document.querySelector(".kitty_checkVersion").addEventListener("click", function() { kitty_getNewVersion(0, false) }) } } function kitty_getNewVersion_() { if (kitty_isrun.getNewVersion) { return } kitty_isrun.getNewVersion = true kitty_logListPush("检查版本号中...", "info"); fetch("https://hi.kittymao.xyz/getVersion").then(res => res.json()).then(res=> { try { let data = res.data if (data.version === kitty_config.version) { kitty_config.update = 1 kitty_logListPush("已是最新版", "success") } else { kitty_config.update = 2 kitty_logListPush("不是最新版,可能无法使用", "warning") } kitty_setConfig() } catch(e) { console.log(e) kitty_logListPush("失败,返回值处理有问题", "danger") } }).catch((e) => { if (e.toString().includes("JSON")) { kitty_logListPush("JSON解析失败,请联系作者", "danger") } else { kitty_logListPush("请求失败,请联系作者", "danger") } }).finally(() => { kitty_isrun.getNewVersion = false }) } function kitty_getCardNumber() { let txm = localStorage.getItem("txm") if (txm) { localStorage.setItem("kitty_txm", txm) localStorage.removeItem("txm") kitty_logListPush("shanchutsm", "warning") } let kitty_txm = localStorage.getItem("kitty_txm") if (kitty_txm) { document.querySelector("#kitty_txm").value = kitty_txm if (kitty_isSuccess()) { kitty_logListPush("请求成功请尝试观看", "success") } else { kitty_logListPush("已获取到上次使用的卡密,请另外保存卡密", "info") kitty_logListPush("已准备就绪,请点击GO按钮", "info") } } else { if (kitty_isSuccess()) { kitty_logListPush("请求成功请尝试观看", "success") } else { kitty_logListPush("已准备就绪,请点击GO按钮", "info") kitty_logListPush(`请输入卡密,然后点击GO按钮${kitty_emojiList[kitty_emojiIndex]}`, "info") } kitty_emojiIndex++ } } function kitty_getPermission(index, txm, change) { if (kitty_isrun.getPermission&&!change) { return } let host = kitty_getHost(index) console.log(host, "host") if(!change) { kitty_logListPush("发送请求中请耐心等待...", "info") } kitty_isrun.getPermission = true let url = `${host}/getPermission/${txm}/0523` fetch(url).then(res => res.json()).then(res => { localStorage.setItem("kitty_requestSuccessHost", host) try { if (res.code == 200) { dealGetPermissionRes(res.data) } else { kitty_logListPush(res.msg, res.code) } } catch(e) { kitty_logListPush("失败,返回值处理有问题", "danger") console.log(e) } kitty_isrun.getPermission = false }).catch((e) => { if (e.toString().includes("JSON")) { kitty_logListPush("JSON解析失败,请联系作者", "danger") kitty_isrun.getPermission = false } else { index++ let getHost = kitty_getHost(index) if (getHost) { kitty_logListPush("请求失败,切换线路中请耐心等待...", "warning") kitty_getPermission(index, txm, true) } else { kitty_logListPush("请求失败,请联系作者", "danger") kitty_isrun.getPermission = false } } }) } function dealGetPermissionRes(resData) { console.log(resData) let cookieArr = resData.cookieHeader cookieArr.forEach((item) => { let temp = item.split(";")[0] let tempArr = temp.split("=") kitty_setCookie(tempArr[0], tempArr[1], 359) }) kitty_logListPush("请求成功, 刷新页面中请稍候...", "success"); setTimeout(() => { location.reload() }, 1000) } function kitty_checkIsSuccess() { if (kitty_isSuccess()) { kitty_hiddenPanel(); } } function kitty_isSuccess() { let account = document.querySelectorAll("[style='font-weight:bold']") if (account.length == 0) { return false } for (let i = 0; i < account.length; i++) { if (account[i].innerHTML == "cl20220227") { return true; } } } function kitty_getNewVersion(index, change) { if (kitty_isrun.getNewVersion&&!change) { return } let host = kitty_getHost(index) console.log(host, "host") if(!change) { kitty_logListPush("检查版本号中请耐心等待...", "info") } kitty_isrun.getNewVersion = true let url = `${host}/getVersion` fetch(url).then(res => res.json()).then(res => { localStorage.setItem("kitty_requestSuccessHost", host) try { let data = res.data if (data.version === kitty_config.version) { kitty_config.update = 1 kitty_logListPush("已是最新版", "success") } else { kitty_config.update = 2 kitty_logListPush("不是最新版,可能无法使用", "warning") } kitty_setConfig() } catch(e) { kitty_logListPush("失败,返回值处理有问题", "danger") console.log(e) } kitty_isrun.getNewVersion = false }).catch((e) => { if (e.toString().includes("JSON")) { kitty_logListPush("JSON解析失败,请联系作者", "danger") kitty_isrun.getNewVersion = false } else { index++ let getHost = kitty_getHost(index) if (getHost) { kitty_logListPush("请求失败,切换线路中请耐心等待...", "warning") kitty_getNewVersion(index, true) } else { kitty_logListPush("请求失败,请联系作者", "danger") kitty_isrun.getPermission = false } } }) } function kitty_vipPanelInit() { kitty_insertStyle(); kitty_createPanel(); kitty_getSuccessHost(); kitty_showLogList(); kitty_eventBind(); kitty_getCardNumber(); kitty_setConfig(); kitty_checkIsSuccess() } function kitty_isRun() { let site = false let run = false if(document.title.includes("草榴社區")||document.title.includes("欢迎您")) { site = true } if (document.querySelector("#kitty_vipPanel")||document.querySelector("#vipPanel")) { run = true } if (site&&!run) { kitty_vipPanelInit(); } } kitty_isRun()