一键复制美剧链接

识别常用网址的美剧链接,美剧天堂添加跳转豆瓣、IMDB、subscene、rarbg、piratebay入口,原始匹配网站云盘可以直接进入,可识别用户匹配网站中的链接。附本人写的字幕翻译程序,下载地址在附加信息中。

安装此脚本?
作者推荐脚本

您可能也喜欢PotPlayer播放云盘视频

安装此脚本
  1. // ==UserScript==
  2. // @name 一键复制美剧链接
  3. // @version 1.7.2
  4. // @description 识别常用网址的美剧链接,美剧天堂添加跳转豆瓣、IMDB、subscene、rarbg、piratebay入口,原始匹配网站云盘可以直接进入,可识别用户匹配网站中的链接。附本人写的字幕翻译程序,下载地址在附加信息中。
  5. // @author bleu
  6. // @compatible edge Tampermonkey
  7. // @license MIT
  8. // @icon https://fastly.jsdelivr.net/gh/Bleu404/PRPO@latest/png/magent.png
  9. // @supportURL https://gf.qytechs.cn/zh-CN/scripts/430126-一键复制美剧链接/feedback
  10. // @match https://*.meijutt.tv/content/*
  11. // @match https://*.meijutt.net/content/*
  12. // @match https://www.kpkuang.com/*
  13. // @match https://91mjw.com/*
  14. // @match https://www.bd2020.com/*
  15. // @match https://www.ttmeijuvip.com/*
  16. // @match https://www.xl720.com/*
  17. // @match https://pan.xunlei.com/s/*
  18. // @match https://pan.baidu.com/share/*
  19. // @match https://115.com/s/*
  20. // @grant GM_setClipboard
  21. // @grant GM_getValue
  22. // @grant GM_setValue
  23. // @grant GM_addStyle
  24. // @grant GM_openInTab
  25. // @grant GM_xmlhttpRequest
  26. // @grant GM_info
  27. // @run-at document-end
  28. // @require https://fastly.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.min.js
  29. // @require https://fastly.jsdelivr.net/npm/sweetalert2@11.1.0/dist/sweetalert2.all.min.js
  30. /* globals jQuery, $, waitForKeyElements , swal,Swal */
  31. // @namespace http://tampermonkey.net/
  32. // ==/UserScript==
  33. (function () {
  34. 'use strict';
  35.  
  36. const webName = ['meijutt', '91mjw', 'kpkuang', 'ttmeijuvip', 'xl720'];
  37. const panArry = ['xunlei', 'baidu', '115'];
  38. const pageURL = window.location.href;
  39. let sign;
  40. let floatSign = false;
  41. let cssStyle;
  42. let BleuButton;
  43. let buttParent;
  44. let openMark = 0;
  45. let oldParent = null;
  46. let panType = null;
  47.  
  48. let toolbox = {
  49.  
  50. addNewStyle() {
  51. if (sign === 'cloudPan') {
  52. return 0;
  53. }
  54. cssStyle = [
  55. '.btn_bleu{padding: 10px 25px;font-size: 16px;cursor: pointer;text-align: center; text-decoration: none;outline: none;color: #fff;background-color: #008CBA;border: none;border-radius: 14px;display:block;margin:0 auto}',
  56. '.btn_bleu:hover{background-color: #008CEA}',
  57. '.btn_bleu:active{background-color: #008CEA;box-shadow: 0 5px #666;transform: translateY(4px);}',
  58. '.floatButton {position: fixed;bottom: 10%;left:46%;right: 0;margin:0 auto;z-index:9999}',
  59. ];
  60. BleuButton = '<div><input type="button" class="btn_bleu" id="btn_bleu" value="复制全部链接" ></div>';
  61. cssStyle.forEach(function (value) {
  62. GM_addStyle(value);
  63. });
  64. },
  65.  
  66. getURLsign() {
  67. let nameFU = GM_info.script.options.override.use_matches;
  68. nameFU.length != 0 && nameFU.forEach(function (value) {
  69. if (pageURL.match(value)) {
  70. sign = value
  71. }
  72. })
  73. webName.forEach(function (value) {
  74. if (pageURL.match(value)) {
  75. sign = value
  76. }
  77. })
  78. if (sign == undefined) {
  79. //云盘界面
  80. sign = 'cloudPan';
  81. }
  82. },
  83.  
  84. getButtonParent() {
  85. //公众号屏蔽
  86. let adshow = $("div.widget-weixin");
  87. if (adshow.length != 0) {
  88. adshow.remove();
  89. }
  90. let box;
  91. switch (sign) {
  92. case 'meijutt':
  93. $("div.widget-weixin").remove();
  94. box = pageURL.match("m.meijutt.tv")?$(".arconix-toggle-content.fn-clear"):$("div.o_cn_r_box");
  95. break;
  96. case '91mjw':
  97. box = $(".down-list");
  98. break;
  99. case 'kpkuang':
  100. box = $(".fed-down-item.fed-drop-item.fed-visible");
  101. break;
  102. case 'ttmeijuvip':
  103. box = $("div.box_bor3");
  104. break;
  105. case 'rrdyw':
  106. box = $(".movie-txt");
  107. break;
  108. case 'xl720':
  109. box = $(".entry-content");
  110. break;
  111. default:
  112. floatSign = true;
  113. box = $("body");
  114. break;
  115. }
  116. return box;
  117. },
  118.  
  119. arryDel(arrold) {
  120. var arr = [];
  121. arrold.forEach(function (value) {
  122. if (arr.indexOf(value) == -1) {
  123. if (sign == 'kpkuang') {
  124. value = decodeURIComponent(escape(window.atob(value.replace('data-clipboard-text="', ''))));
  125. if (arr.indexOf(value) == -1) {
  126. arr.push(value);
  127. }
  128. return;
  129. }
  130. arr.push(value);
  131. }
  132. })
  133. if (sign == 'kpkuang') {
  134. let end;
  135. let nm = $(".uk-width-expand.uk-first-column").text();
  136. nm = nm.match(/第\d*集/)[0];
  137. nm = nm.replace('第', '').replace('集', '');
  138. end = arr.length / Math.ceil(arr.length / nm);
  139. arr = arr.slice(0, end);
  140. }
  141. return arr;
  142. },
  143.  
  144. getDownloadText() {
  145. let ulstr = buttParent.innerHTML;
  146. let reg = /magnet\:\?[^"]*|ed2k\:\/\/[^"]*|thunder\:\/\/[^"]*|data-clipboard-text="[^"]*/g;
  147. let s = ulstr.match(reg);
  148. return s == null ? s : this.arryDel(s);
  149. },
  150.  
  151. findLinknode(buttdiv) {
  152. buttParent = buttdiv
  153. if (sign == "meijutt"||sign == "ttmeijuvip") {
  154. for (let tabs of document.getElementsByClassName('tabs-list')) {
  155. if (tabs.getAttribute('style') == 'display: block;' || tabs.getAttribute('style') == null) {
  156. return tabs;
  157. }
  158. }
  159. }
  160. return buttParent;
  161. },
  162.  
  163. noneLinkfunc(button) {
  164. openMark++;
  165. if (sign === "meijutt") {
  166. $(button).attr('value', '打开全部链接');
  167. if (openMark === 1 || (openMark === 2 && oldParent != buttParent)) {
  168. openMark = 1
  169. alert("确定打开所有链接吗?共有" + $(buttParent).find('li').length + "条\r\n 再次点击确认");
  170. oldParent = buttParent;
  171. }
  172. if (openMark === 2 && oldParent === buttParent) { //确定是同一标签下
  173. openMark = 0;
  174. if ($(buttParent).find("input")) {
  175. $(buttParent).find("input").each(function () {
  176. this.click();
  177. })
  178. };
  179. if ($(buttParent).find("a")) {
  180. $(buttParent).find("a").each(function () {
  181. let href = $(this).attr('href');
  182. href.indexOf("http") < 0 ? href = "https://www.meijutt.tv/" + href : href;
  183. GM_openInTab(href, {
  184. active: true,
  185. insert: true,
  186. setParent: true
  187. });
  188. });
  189. };
  190. }
  191. } else {
  192. alert("没有复制任何链接");
  193. }
  194. },
  195.  
  196. sleep(time) {
  197. return new Promise((resolve) => setTimeout(resolve, time));
  198. },
  199.  
  200. isHidden(el) {
  201. try {
  202. return el.offsetParent === null;
  203. } catch (e) {
  204. return false;
  205. }
  206. },
  207.  
  208. getHash(linkAddress) {
  209. //处理迅雷百度云分享链接
  210. if (linkAddress == null) {
  211. return 0
  212. }
  213. if (!(linkAddress.search("xunlei") >= 0 || linkAddress.search("baidu") >= 0)) {
  214. return 0
  215. }
  216. let hashRex = /\/s\/[^?]*|surl=[^?]*/;
  217. let res = linkAddress.match(hashRex)[0].replace('surl=', '');
  218. if (linkAddress.search("baidu") >= 0 && res.search("\/s\/") >= 0) {
  219. res = res.replace('\/s\/', '').substr(1);
  220. }
  221.  
  222. return res.replace('\/s\/', '');
  223. },
  224.  
  225. getPanType() {
  226. panArry.forEach(function (value) {
  227. if (pageURL.search(value) >= 0) {
  228. panType = value
  229. }
  230. })
  231. },
  232.  
  233. getButtSec(linkText) {
  234. let bleuButtSec = '';
  235. for (let key in linkText) {
  236. if (key === "magnet" && linkText[key].length > 0) {
  237. bleuButtSec = bleuButtSec + `<input type="button" class="btn_bleu sec" value="磁力链接:${linkText[key].length}条" linktype="magnet"/></br>`;
  238. }
  239. if (key === "ed2k" && linkText[key].length > 0) {
  240. bleuButtSec = bleuButtSec + `<input type="button" class="btn_bleu sec" value="电驴链接:${linkText[key].length}条" linktype="ed2k"/></br>`;
  241. }
  242. if (key === "thunder" && linkText[key].length > 0) {
  243. bleuButtSec = bleuButtSec + `<input type="button" class="btn_bleu sec" value="迅雷链接:${linkText[key].length}条" linktype="thunder"/></br>`;
  244. }
  245. if (key === "http" && linkText[key].length > 0) {
  246. bleuButtSec = bleuButtSec + `<input type="button" class="btn_bleu sec" value="http链接:${linkText[key].length}条" linktype="http"/></br>`;
  247. }
  248. }
  249. bleuButtSec = bleuButtSec + '<input type="button" class="btn_bleu sec" value="全部链接" linktype="all"/>';
  250. return bleuButtSec;
  251. },
  252. }
  253.  
  254. let linkHandler = {
  255.  
  256. webWithPanLink() {
  257. let hash = '',
  258. linkParent = '',
  259. pswd = '';
  260.  
  261. if (pageURL.indexOf('bd2020') >= 0) {
  262. localStorage.setItem("openid", 'omcj56pIE_ssXEG7s04uZ9saaa'); //去二维码
  263. let hide = document.querySelector('.layui-icon.layui-icon-down');
  264. hide ? hide.click() : 1;
  265. linkParent = document.querySelectorAll('.option.copybtn.alert');
  266. linkParent.forEach((value) => {
  267. hash = toolbox.getHash($(value).find('a')[0].getAttribute('href'));
  268. pswd = $(value).find('span')[0].innerHTML;
  269. GM_setValue(hash, pswd);
  270. });
  271. }
  272. },
  273.  
  274. panListener(panInputSign, panBttonSign) {
  275. let asda = toolbox.getHash(pageURL);
  276. let password = GM_getValue(asda);
  277. let maxTime = 10;
  278. if (password == undefined) {
  279. return 0
  280. }
  281. let listener = setInterval(async () => {
  282. maxTime--;
  283. let panInput = document.querySelector(panInputSign);
  284. let panBtton = document.querySelector(panBttonSign);
  285. if (panInput && !toolbox.isHidden(panInput)) {
  286.  
  287. clearInterval(listener);
  288.  
  289. let lastValue = panInput.value;
  290. panInput.value = password;
  291. //Vue & React 触发 input 事件===》 可行
  292. /*let event = new Event('input', {bubbles: true});
  293. let tracker = panInput._valueTracker;
  294. if (tracker) {
  295. tracker.setValue(lastValue);
  296. }
  297. panInput.dispatchEvent(event);*/
  298. //js原生触发===》可行
  299. var evt = document.createEvent('HTMLEvents')
  300. evt.initEvent('input', true, true)
  301. panInput.dispatchEvent(evt)
  302. //jquery触发===》不可行
  303. //$(panInput).bind('input propertychange', function() {$(this).val(lastValue);});
  304.  
  305. await toolbox.sleep(500); //1秒后点击按钮
  306. panBtton.click();
  307. } else {
  308. maxTime === 0 && clearInterval(listener);
  309. }
  310. }, 800);
  311. },
  312.  
  313. clickPanButton(panBttonSign) {
  314. let maxTime = 10;
  315. let listener = setInterval(async () => {
  316. maxTime--;
  317. let panBtton = document.querySelector(panBttonSign);
  318. if (panBtton && !toolbox.isHidden(panBtton)) {
  319. clearInterval(listener);
  320. await toolbox.sleep(500); //1秒后点击按钮
  321. panBtton.click();
  322. } else {
  323. maxTime === 0 && clearInterval(listener);
  324. }
  325. }, 800);
  326. },
  327.  
  328. autoOpenPan() {
  329. if (sign != 'cloudPan') {
  330. return 0;
  331. }
  332. let panInput, panBtton;
  333. if (panType === 'xunlei') {
  334. panInput = '.pass-input-wrap .td-input__inner';
  335. panBtton = '.pass-input-wrap .td-button';
  336. }
  337. if (panType === 'baidu') {
  338. panInput = '#accessCode';
  339. panBtton = '#submitBtn';
  340. }
  341. if (panType === '115') {
  342. panBtton = '.button.btn-large';
  343. }
  344. panInput && panBtton ? linkHandler.panListener(panInput, panBtton) : linkHandler.clickPanButton(panBtton);
  345. },
  346.  
  347. fixPanButton() {
  348. if (sign != "meijutt") {
  349. return 0;
  350. }
  351. let option = {
  352. active: true,
  353. insert: true,
  354. setParent: true
  355. };
  356. $('.copy-pw').each(function () {
  357. $(this).attr('value', '点击进入');
  358. $(this).attr('href', $(this).next().attr('href'));
  359. $(this).next().remove();
  360. })
  361. $('.copy-pw').on('click', function () {
  362. GM_setClipboard($(this).attr('data'), 'text');
  363. let hash = toolbox.getHash($(this).attr('href'));
  364. GM_setValue(hash, $(this).attr('data'));
  365. GM_openInTab($(this).attr('href'), option);
  366. })
  367. },
  368.  
  369. organizeLink(linkArry) {
  370. let linkType = [0, 0, 0, 0];
  371. let linkText = {
  372. 'magnet': [],
  373. 'ed2k': [],
  374. 'thunder': [],
  375. 'http': [],
  376. };
  377. linkArry.forEach((value) => {
  378. if (value.search("magnet") >= 0) {
  379. linkText.magnet.push(value);
  380. linkType[0] = 1;
  381. return;
  382. }
  383. if (value.search("ed2k") >= 0) {
  384. linkText.ed2k.push(value);
  385. linkType[1] = 1;
  386. return;
  387. }
  388. if (value.search("thunder") >= 0) {
  389. linkText.thunder.push(value);
  390. linkType[2] = 1;
  391. return;
  392. }
  393. if (value.search("http") >= 0) {
  394. linkText.http.push(value);
  395. linkType[3] = 1;
  396. return;
  397. }
  398. })
  399.  
  400. if (linkType[0] + linkType[1] + linkType[2] + linkType[3] === 1) {
  401. let arrytxt = linkArry.toString().replace(/,/g, "\n");
  402. GM_setClipboard(arrytxt, 'text');
  403. } else {
  404. Swal.fire({
  405. html: toolbox.getButtSec(linkText),
  406. width: 400 + 'px',
  407. showConfirmButton: false,
  408. //showCloseButton: true,
  409. })
  410. }
  411. $('.btn_bleu.sec').on("click", function () {
  412. let arrytxt;
  413. let attr = $(this).attr("linktype");
  414. if (attr != "all") {
  415. arrytxt = linkText[attr].toString().replace(/,/g, "\n");
  416. } else {
  417. let arry = [];
  418. arry.push(linkText.magnet, linkText.ed2k, linkText.thunder, linkText.http);
  419. arrytxt = arry.toString().replace(/,/g, "\n");
  420. }
  421. GM_setClipboard(arrytxt, 'text');
  422. });
  423. },
  424.  
  425. ButtonAddEvent() {
  426. $('.btn_bleu').on("click", function () {
  427. buttParent = toolbox.findLinknode(this.parentNode.parentNode);
  428. let arryAll = toolbox.getDownloadText();
  429. arryAll == null ? toolbox.noneLinkfunc(this) : linkHandler.organizeLink(arryAll);
  430. });
  431. },
  432.  
  433. processButton() {
  434. let BleuButton1 = '<div><input type="button" class="btn_bleu floatButton" id="btn_bleu" value="复制全部链接" ></div>';
  435. if (sign === 'cloudPan') {
  436. return 0;
  437. }
  438. buttParent = toolbox.getButtonParent();
  439. //buttParent.append(BleuButton);
  440. if (floatSign) {
  441. buttParent.append(BleuButton1);
  442. } else {
  443. buttParent.append(BleuButton);
  444. }
  445. this.ButtonAddEvent();
  446. this.fixPanButton(); //适配meijutt网站
  447. },
  448.  
  449. addDBicon() {
  450. if (!(sign === "meijutt"||sign === "ttmeijuvip")) {
  451. return
  452. }
  453. let OriginalName = $('.o_r_contact').find('li')[1].outerText.replace('原名:', '').replace(/^\s*/, "").toLowerCase();
  454. let name = $('h1').html();
  455. let IMDB, douban;
  456. let firstID;
  457. let icon = '<div class="ico_bleu" id="douban"><svg height="24" viewBox="0 0 152 152" width="24" xmlns="http://www.w3.org/2000/svg"><g id="Layer_2" data-name="Layer 2"><g id="Color_Icon" data-name="Color Icon"><g id="_74.Douban" data-name="74.Douban"><rect id="Background" fill="#4caf50" height="152" rx="12" width="152"/><g id="Icon" fill="#fff"><path d="m95.91 107.15 5.6-19.15h7.87v-33.51h-66.7v33.51h7l6 19.14h-19.68v7.6h79.65v-7.6zm-39.8-44h40.25v16h-40.25zm28.53 44h-17.72l-5.92-19.15h29.24z"/><path d="m36.37 37.25h79.63v8.81h-79.63z"/></g></g></g></g></svg></div><div class="ico_bleu" id="imdb"><svg id="home_img" class="ipc-logo" xmlns="http://www.w3.org/2000/svg" width="48" height="24" viewBox="0 0 64 32" version="1.1"><g fill="#F5C518"><rect x="0" y="0" width="100%" height="100%" rx="4"></rect></g><g transform="translate(8.000000, 7.000000)" fill="#000000" fill-rule="nonzero"><polygon points="0 18 5 18 5 0 0 0"></polygon><path d="M15.6725178,0 L14.5534833,8.40846934 L13.8582008,3.83502426 C13.65661,2.37009263 13.4632474,1.09175121 13.278113,0 L7,0 L7,18 L11.2416347,18 L11.2580911,6.11380679 L13.0436094,18 L16.0633571,18 L17.7583653,5.8517865 L17.7707076,18 L22,18 L22,0 L15.6725178,0 Z"></path><path d="M24,18 L24,0 L31.8045586,0 C33.5693522,0 35,1.41994415 35,3.17660424 L35,14.8233958 C35,16.5777858 33.5716617,18 31.8045586,18 L24,18 Z M29.8322479,3.2395236 C29.6339219,3.13233348 29.2545158,3.08072342 28.7026524,3.08072342 L28.7026524,14.8914865 C29.4312846,14.8914865 29.8796736,14.7604764 30.0478195,14.4865461 C30.2159654,14.2165858 30.3021941,13.486105 30.3021941,12.2871637 L30.3021941,5.3078959 C30.3021941,4.49404499 30.272014,3.97397442 30.2159654,3.74371416 C30.1599168,3.5134539 30.0348852,3.34671372 29.8322479,3.2395236 Z"></path><path d="M44.4299079,4.50685823 L44.749518,4.50685823 C46.5447098,4.50685823 48,5.91267586 48,7.64486762 L48,14.8619906 C48,16.5950653 46.5451816,18 44.749518,18 L44.4299079,18 C43.3314617,18 42.3602746,17.4736618 41.7718697,16.6682739 L41.4838962,17.7687785 L37,17.7687785 L37,0 L41.7843263,0 L41.7843263,5.78053556 C42.4024982,5.01015739 43.3551514,4.50685823 44.4299079,4.50685823 Z M43.4055679,13.2842155 L43.4055679,9.01907814 C43.4055679,8.31433946 43.3603268,7.85185468 43.2660746,7.63896485 C43.1718224,7.42607505 42.7955881,7.2893916 42.5316822,7.2893916 C42.267776,7.2893916 41.8607934,7.40047379 41.7816216,7.58767002 L41.7816216,9.01907814 L41.7816216,13.4207851 L41.7816216,14.8074788 C41.8721037,15.0130276 42.2602358,15.1274059 42.5316822,15.1274059 C42.8031285,15.1274059 43.1982131,15.0166981 43.281155,14.8074788 C43.3640968,14.5982595 43.4055679,14.0880581 43.4055679,13.2842155 Z"></path></g></svg></div>';
  458. GM_addStyle('.ico_bleu{display: inline-flex;vertical-align: middle;margin: inherit;margin-left: 10px;}');
  459. GM_addStyle('.ico_bleu:active{box-shadow: 0 5px #666;transform: translateY(4px);}');
  460. let icon1 = '<div class="ico_bleu" id="subscene"><img style="width: 24px;height: 24px;" src="https://subscene.com/favicon.ico"/></div>';
  461. let icon2 = '<div class="ico_bleu" id="rarbg"><img style="width: 24px;height: 24px;" src="https://rargb.to/favicon.ico"/></div>';
  462. let icon3 = '<div class="ico_bleu" id="piratebay"><img style="width: 24px;height: 24px;" src="https://piratebay.live/static/img/tpblogo_sm_ny.gif"/></div>';
  463. let IMDBName = OriginalName.substr(0, OriginalName.indexOf("season"));
  464. IMDBName ? IMDBName : IMDBName = OriginalName;
  465. $('.info-title').append(icon, icon1,icon2,icon3);
  466. $('#douban').on('click', function () {
  467. GM_xmlhttpRequest({
  468. url: 'https://movie.douban.com/j/subject_suggest?q=' + IMDBName.replace(/\s/g, '+'),
  469. method: "GET",
  470. onload: function (res) {
  471. if (res.status === 200) {
  472. var responseArry = JSON.parse(res.responseText);
  473. if (responseArry.length != 0) {
  474. responseArry.forEach(function (value, index) {
  475. if (name === value.title.replace(/\s/g, '')) {
  476. douban = value.id
  477. }
  478. if (index == 0) {
  479. firstID = value.id
  480. }
  481. })
  482. if (douban == undefined) {
  483. douban = firstID;
  484. }
  485. GM_openInTab('https://movie.douban.com/subject/' + douban + '/');
  486. } else {
  487. GM_openInTab("https://search.douban.com/movie/subject_search?search_text=" + name);
  488. }
  489. } else {
  490. GM_openInTab("https://search.douban.com/movie/subject_search?search_text=" + name);
  491. }
  492. },
  493. onerror: function (err) {
  494. GM_openInTab("https://search.douban.com/movie/subject_search?search_text=" + name);
  495. }
  496. })
  497. });
  498. $('#imdb').on('click', function () {
  499. IMDBName = IMDBName.replace(/\s/g, '_');
  500. GM_xmlhttpRequest({
  501. url: 'https://v2.sg.media-imdb.com/suggestion/' + IMDBName[0] + '/' + IMDBName + '.json',
  502. method: "GET",
  503. onload: function (res) {
  504. if (res.status === 200) {
  505. var result = JSON.parse(res.responseText);
  506. IMDB = result.d[0].id;
  507. if (IMDB != undefined && IMDB.indexOf('nm') < 0) {
  508. GM_openInTab('https://www.imdb.com/title/' + IMDB + '/')
  509. } else {
  510. GM_openInTab('https://www.imdb.com/find?q=' + IMDBName)
  511. }
  512. } else {
  513. GM_openInTab('https://www.imdb.com/find?q=' + IMDBName)
  514. }
  515. },
  516. onerror: function (err) {
  517. GM_openInTab('https://www.imdb.com/find?q=' + IMDBName)
  518. }
  519. })
  520. IMDBName = IMDBName.replace(/_/g, ' ');
  521. });
  522. $('#subscene').on('click', function () {
  523. var PARAMS = {query: IMDBName,l: ''};
  524. var temp_form = document.createElement("form");
  525. temp_form.action = 'https://subscene.com/subtitles/searchbytitle';
  526. temp_form.target = "_blank";
  527. temp_form.method = "post";
  528. temp_form.style.display = "none";
  529. for (var x in PARAMS) {
  530. var opt = document.createElement("textarea");
  531. opt.name = x;
  532. opt.value = PARAMS[x];
  533. temp_form.appendChild(opt);
  534. }
  535. document.body.appendChild(temp_form);
  536. temp_form.submit();
  537. document.body.removeChild(temp_form);
  538. });
  539. $('#rarbg').on('click', function () {
  540. var rarbgURL = 'https://rargb.to/search/?search=' + IMDBName;
  541. GM_openInTab(encodeURI(rarbgURL));
  542. });
  543. $('#piratebay').on('click', function () {
  544. var piratebayURL = 'https://piratebay.live/search/' + IMDBName;
  545. GM_openInTab(encodeURI(piratebayURL));
  546. });
  547. },
  548. init() {
  549. toolbox.getURLsign();
  550. toolbox.getPanType();
  551. toolbox.addNewStyle();
  552. this.processButton();
  553. this.webWithPanLink();
  554. this.autoOpenPan();
  555. this.addDBicon();
  556. },
  557. }
  558.  
  559. linkHandler.init();
  560.  
  561. })();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址