vip视频外嵌解析

vip视频解析 -【外嵌解析+带弹幕】目前支持: 腾讯,爱奇艺,优酷, 芒果tv, 脚本特点✔️简洁高效✔️方便快捷

  1. // ==UserScript==
  2. // @name vip视频外嵌解析
  3. // @namespace https://gf.qytechs.cn/zh-CN
  4. // @version 0.0.2
  5. // @author Bsutss
  6. // @namespace vip视频解析
  7. // @description vip视频解析 -【外嵌解析+带弹幕】目前支持: 腾讯,爱奇艺,优酷, 芒果tv, 脚本特点✔️简洁高效✔️方便快捷
  8. // @match https://www.iqiyi.com/*
  9. // @match https://v.qq.com/x/cover/*
  10. // @match https://www.mgtv.com/b/*
  11. // @match https://v.youku.com/v_show/*
  12. // @match https://youku.com/v_show/*
  13. // @match https://www.bilibili.com/*
  14. // @license MIT
  15. // @grant None
  16. // ==/UserScript==
  17.  
  18. (function () {
  19. "use strict";
  20.  
  21. var style = document.createElement("style");
  22. style.textContent = `
  23. ::-webkit-scrollbar {
  24. width: 10px !important;
  25. }
  26.  
  27. ::-webkit-scrollbar-thumb {
  28. background: #C1C1C1 !important;
  29. border-radius: 10px !important;
  30. }
  31.  
  32. ::-webkit-scrollbar-thumb:hover {
  33. background: #9e9e !important;
  34. }
  35.  
  36. .no-select {
  37. user-select: none;
  38. }
  39.  
  40. .button-container {
  41. position: fixed;
  42. top: 50%;
  43. left: 60px;
  44. transform: translate(0, -50%);
  45. z-index: 99999999;
  46. display: none;
  47. grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
  48. grid-gap: 10px;
  49. }
  50.  
  51. .vip-button {
  52. background: #605aca;
  53. border: 0;
  54. padding: 0 25px;
  55. height: 30px;
  56. padding:0 10px;
  57. color: #fff;
  58. cursor:pointer;
  59. display: flex;
  60. align-items: center;
  61. justify-content: center;
  62. font-size: 14px;
  63. font-weight: bold;
  64. margin: 5px 0;
  65. }
  66.  
  67. .vip-button:hover {
  68. background: #605aca;
  69. transform: scale(1.1);
  70. }
  71. `;
  72.  
  73. document.head.appendChild(style);
  74.  
  75. var YQ_cube = document.createElement("div");
  76. YQ_cube.className = "no-select";
  77. YQ_cube.style.cssText = `
  78. width: 50px;
  79. height: 50px;
  80. border-radius: 50%;
  81. background-color: #605aca;
  82. position: fixed;
  83. left: 0;
  84. top: 50%;
  85. cursor: pointer;
  86. z-index: 99999999;
  87. transform: translate(0, -50%);
  88. display: flex;
  89. flex-direction: column;
  90. align-items: center;
  91. justify-content: center;
  92. color: white;
  93. font-size: 13px;
  94. font-weight: bold;
  95. box-shadow: rgb(0 0 0 / 30%) 0px 2px 5px;
  96. `;
  97.  
  98. YQ_cube.textContent = "vip解析";
  99. YQ_cube.title = "微信公众号:残月影视";
  100.  
  101. document.body.appendChild(YQ_cube);
  102.  
  103. // 引入解析接口
  104. var Apilist = [
  105. { name: "解析线路1", url: "https://www.yemu.xyz/?url=" },
  106. { name: "解析线路2", url: "https://jx.aidouer.net/?url=" },
  107. { name: "解析线路3", url: "https://jx.xmflv.com/?url=" },
  108. //2023-10-13 新增
  109. { name: "解析线路4", url: "https://bd.jx.cn/player/?url=" },
  110. { name: "解析线路5", url: "https://api.qianqi.net/vip/?url=" },
  111. ];
  112.  
  113. var buttonContainer = document.createElement("div");
  114. buttonContainer.className = "button-container";
  115.  
  116. Apilist.forEach(function (api) {
  117. var button = document.createElement("button");
  118. button.className = "vip-button";
  119. button.textContent = api.name;
  120. button.addEventListener("click", function () {
  121. // 处理按钮点击事件,跳转到解析页面
  122. window.open(api.url + window.location.href, "_blank");
  123. });
  124. buttonContainer.appendChild(button);
  125. });
  126.  
  127. document.body.appendChild(buttonContainer);
  128. var flag = 1;
  129. YQ_cube.addEventListener("click", function () {
  130. // 检查是否已同意协议
  131. var agreedToTerms = localStorage.getItem("agreedToTerms");
  132. // 如果未同意协议,显示协议弹窗
  133. if (!agreedToTerms) {
  134. var termsPopup = confirm(
  135. "免责声明:1、VIP视频解析中所用到的解析接口来自于网络,版权问题请联系相关解析接口所有者 2、为创造良好的创作氛围,请大家支持正版 3、脚本仅用于学习,切勿用于任何商业等其它用途 4、个别解析线路带有可选的额外收费提速功能,这是线路行为,与脚本作者无关 5、如发现有线路含有广告,请千万不要相信,并请及时反馈,我会第一时间移除该线路 6、点击确定,即表明你已经明确使用脚本可能带来的风险,且愿意自行承担相关风险,对于风险网站不承担任何责任, 以上内容请知晓 "
  136. );
  137. // 如果用户同意,设置同意标志并继续执行脚本
  138. if (termsPopup) {
  139. localStorage.setItem("agreedToTerms", "true");
  140. } else {
  141. alert("您取消了协议,脚本无法使用 确定后会恢复正常 !");
  142. return;
  143. }
  144. }
  145.  
  146. if (flag === 1) {
  147. buttonContainer.style.display = "block";
  148. YQ_cube.innerHTML = "隐藏";
  149. flag = 0;
  150. } else {
  151. buttonContainer.style.display = "none";
  152. YQ_cube.innerHTML = "vip解析";
  153. flag = 1;
  154. }
  155. });
  156. })();

QingJ © 2025

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