jav tag copy

获取页面的tag,返回带tag的文件名 "番号标题 #tag1 #tag2.."

2020/12/15のページです。最新版はこちら。

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください。
  1. // ==UserScript==
  2. // @name jav tag copy
  3. // @namespace https://github.com/dyxcloud
  4. // @version 0.5
  5. // @description 获取页面的tag,返回带tag的文件名 "番号标题 #tag1 #tag2.."
  6. // @author dyxlike
  7. // @match http://www.g46e.com/*
  8. // @match http://javlib.com/*
  9. // @match http://www.javlibrary.com/*
  10. // @match https://www.javbus.com/*
  11. // @match https://avsox.website/*
  12. // @grant GM_setClipboard
  13. // ==/UserScript==
  14.  
  15. (function() {
  16. 'use strict';
  17.  
  18.  
  19.  
  20. function javlibGetter(){
  21. let result = '';
  22. //获取标题
  23. let title = document.querySelector('#video_title > h3').innerText;
  24. console.log("title="+title);
  25. result+=title;
  26.  
  27. //获取start
  28. let starAs = document.querySelectorAll('span.star > a');
  29. console.log(starAs.length);
  30. if (starAs.length > 0) {
  31. result += " ";
  32. for(let a of starAs){
  33. console.log("star="+a.text);
  34. result+=("#"+a.text);
  35. }
  36. }
  37.  
  38. //获取tag
  39. let tagAs = document.querySelectorAll('span.genre > a');
  40. console.log(tagAs.length);
  41. if(tagAs.length>0){
  42. result += " ";
  43. for(let a of tagAs){
  44. console.log("tag="+a.text);
  45. result+=("#"+a.text);
  46. }
  47. }
  48. return result;
  49. }
  50.  
  51. function javlib(){
  52. let avname = document.createElement('a');
  53. avname.innerText='点击复制tag文件名';
  54. avname.href="#";
  55. let video_info = document.querySelector('#video_info');
  56. video_info.append(avname);
  57.  
  58. avname.onclick = function () {
  59. let result = javlibGetter();
  60. GM_setClipboard(result);
  61. };
  62. }
  63.  
  64. function javbusGetter(){
  65. let result = '';
  66. //获取标题
  67. let title = document.querySelector('body > div.container > h3').innerText;
  68. console.log("title="+title);
  69. result+=title;
  70.  
  71. //获取start
  72. let starAs = document.querySelectorAll('span.genre > a[href*="/star/');
  73. console.log(starAs.length);
  74. if (starAs.length > 0) {
  75. result += " ";
  76. for(let a of starAs){
  77. console.log("star="+a.text);
  78. result+=("#"+a.text);
  79. }
  80. }
  81.  
  82. //获取tag
  83. let tagAs = document.querySelectorAll('span.genre > a[href*="/genre/');
  84. console.log(tagAs.length);
  85. if(tagAs.length>0){
  86. result += " ";
  87. for(let a of tagAs){
  88. console.log("tag="+a.text);
  89. result+=("#"+a.text);
  90. }
  91. }
  92. return result;
  93. }
  94.  
  95. function javbus(){
  96. let avname = document.createElement('a');
  97. avname.innerText='点击复制tag文件名';
  98. avname.href="#";
  99. let video_info = document.querySelector('body > div.container > div.row.movie > div.col-md-3.info');
  100. video_info.append(avname);
  101.  
  102. avname.onclick = function () {
  103. let result = javbusGetter();
  104. GM_setClipboard(result);
  105. };
  106. }
  107.  
  108. function avsoxGetter(){
  109. let result = '';
  110. //获取标题
  111. let title = document.querySelector('body > div.container > h3').innerText;
  112. console.log("title="+title);
  113. result+=title;
  114.  
  115. //获取start
  116. let starAs = document.querySelectorAll('#avatar-waterfall > a');
  117. console.log(starAs.length);
  118. if (starAs.length > 0) {
  119. result += " ";
  120. for(let a of starAs){
  121. let span = a.children[1];
  122. console.log("star="+span.text);
  123. result+=("#"+span.text);
  124. }
  125. }
  126.  
  127. //获取tag
  128. let tagSpans = document.querySelectorAll('.genre');
  129. console.log(tagSpans.length);
  130. if(tagSpans.length>0){
  131. result += " ";
  132. for(let sp of tagSpans){
  133. let a = sp.children[0];
  134. console.log("tag="+a.text);
  135. result+=("#"+a.text);
  136. }
  137. }
  138. return result;
  139. }
  140.  
  141. function avsox(){
  142. let avname = document.createElement('a');
  143. avname.innerText='点击复制tag文件名';
  144. avname.href="#";
  145. let video_info = document.querySelector('div."col-md-3 info"');
  146. video_info.append(avname);
  147.  
  148. avname.onclick = function () {
  149. let result = avsoxGetter();
  150. GM_setClipboard(result);
  151. };
  152. }
  153.  
  154. function main(){
  155. let title = document.title;
  156. if ((/JAVLib/g).test(title)) {
  157. javlib();
  158. } else if ((/JavBus/g).test(title)) {
  159. javbus();
  160. } else if ((/avsox/g).test(title)) {
  161. avsox();
  162. }
  163. }
  164.  
  165. main();
  166.  
  167. })();