🏠 Home 

Greasy Fork is available in English.

猫站筛种脚本

用于猫站筛选符合体积大小的种子并自动复制下载链接


安装此脚本?
  1. // ==UserScript==
  2. // @name 猫站筛种脚本
  3. // @namespace http://tampermonkey.net/
  4. // @version 2024-03-05
  5. // @description 用于猫站筛选符合体积大小的种子并自动复制下载链接
  6. // @author wlqhuo567
  7. // @match https://pterclub.com/torrents.php*
  8. // @match https://pterclub.com/music.php*
  9. // @icon https://www.google.com/s2/favicons?sz=64&domain=tampermonkey.net
  10. // @grant none
  11. // @license GPL3
  12. // ==/UserScript==
  13. (function() {
  14. 'use strict';
  15. // Your code here...
  16. let panel=document.createElement('div');
  17. panel.style.background='#ffffff';
  18. panel.style.width='240px';
  19. panel.style.height='330px';
  20. panel.style.border='2px solid #2083fd';
  21. panel.style.position='fixed';
  22. panel.style.top='calc(20% - 20px)';
  23. panel.style.left='7px';
  24. panel.style.display='none';
  25. panel.style.borderRadius='4px';
  26. panel.style.textAlign='center';
  27. panel.innerHTML ='<p><img src=\'./favicon.ico\' width=\'20px\'/>筛种</p><p> Passkey: <input style=\'display:inline\' placeholder=\'Passkey\' id=\'filter_passkey\' /></p>';
  28. panel.innerHTML+='<p>做种人数: <input style=\'display:inline\' placeholder=\'6\' id=\'filter_min\' value=\'6\'/></p>';
  29. panel.innerHTML+='<p><button id=\'filter_btn\'>筛选</button></p>';
  30. panel.innerHTML+='<p><textarea style=\'width:220px;height:120px\' id=\'filter_res\' placeholder=\'筛选结果\'></textarea></p>';
  31. panel.innerHTML+='<p id=\'filter_notice\' style=\'display:none\'>已自动复制到剪贴板</p>';
  32. let btn=document.createElement('div');
  33. btn.style.background='rgba(255,255,255,.8)';
  34. btn.style.borderRadius='0 4px 4px 0';
  35. btn.style.width='20px';
  36. btn.style.height='60px';
  37. btn.style.position='fixed';
  38. btn.style.left='10px';
  39. btn.style.top='20%';
  40. btn.style.border='1px solid #2083fd';
  41. btn.style.lineHeight='58px';
  42. btn.style.textAlign='center';
  43. btn.style.fontSize='14px';
  44. btn.style.color='#2083fd';
  45. btn.style.userSelect='none';
  46. btn.style.display='block';
  47. btn.innerHTML='▶';
  48. btn.onclick=()=>{
  49. if(btn.innerHTML=='▶'){
  50. btn.innerHTML='◀';
  51. btn.style.left='250px';
  52. panel.style.display='block';
  53. }else{
  54. btn.innerHTML='▶';
  55. btn.style.left='10px';
  56. panel.style.display='none';
  57. }
  58. };
  59. document.body.appendChild(panel);
  60. document.body.appendChild(btn);
  61. let xhr=new XMLHttpRequest();
  62. xhr.open('POST','./getrss.php',false);
  63. xhr.setRequestHeader ('Content-type', 'application/x-www-form-urlencoded');
  64. xhr.send('inclbookmarked=0&showrows=10&https=1');
  65. let res=xhr.responseText;
  66. let l=res.indexOf('passkey=')+8;
  67. let r=l+32;
  68. res=res.substring(l,r)
  69. document.getElementById('filter_passkey').value=res;
  70. document.getElementById('filter_btn').onclick=()=>{
  71. let passkey=document.getElementById('filter_passkey').value;
  72. let min_size=document.getElementById('filter_min').value;
  73. if(passkey=='' || min_size==''){
  74. alert('Error');
  75. return;
  76. }
  77. let arr=document.getElementsByClassName('rowfollow');
  78. let arr2=new Array();
  79. Array.from(arr).forEach((e,i)=>{
  80. if(e.getAttribute('align')=='center'){
  81. let a=e.getElementsByTagName('a');
  82. if(a[0] && parseInt(a[0].innerHTML)<6){
  83. let id=a[0].getAttribute('href').match(/id=([^&]*)/)[1];
  84. arr2.push('https://pterclub.com/download.php?id='+id+'&passkey='+passkey);
  85. }
  86. }
  87. });
  88. let textarea = document.getElementById("filter_res");
  89. textarea.value = arr2.join('\n');
  90. textarea.select();
  91. document.execCommand('copy');
  92. document.getElementById('filter_notice').style.display='block';
  93. };
  94. })();