coolinet display m3u8 address

coolinet 显示m3u8地址

Versión del día 8/1/2020. Echa un vistazo a la versión más reciente.

  1. // ==UserScript==
  2. // @name coolinet display m3u8 address
  3. // @namespace coolinet_display_m3u8_address
  4. // @supportURL https://github.com/zhuzemin
  5. // @description coolinet 显示m3u8地址
  6. // @include https://www.coolinet.net/*
  7. // @version 1.0
  8. // @grant GM_xmlhttpRequest
  9. // @run-at document-start
  10. // @author zhuzemin
  11. // @license Mozilla Public License 2.0; http://www.mozilla.org/MPL/2.0/
  12. // @license CC Attribution-ShareAlike 4.0 International; http://creativecommons.org/licenses/by-sa/4.0/
  13. // @connect-src video1.yocoolnet.in
  14. // ==/UserScript==
  15. var config = {
  16. 'debug': false
  17. };
  18. var debug = config.debug ? console.log.bind(console) : function () {
  19. };
  20. class Player{
  21. constructor(href) {
  22. this.method = 'GET';
  23. this.url = href;
  24. this.headers = {
  25. 'User-agent': 'Mozilla/4.0 (compatible) Greasemonkey',
  26. 'Accept': 'application/atom+xml,application/xml,text/xml',
  27. 'Referer': window.location.href,
  28. };
  29. this.charset = 'text/plain;charset=utf8';
  30. }
  31. };
  32. var getLocation = function(href) {
  33. var l = document.createElement("a");
  34. l.href = href;
  35. return l;
  36. };
  37. var init = function () {
  38. var allmyplayer=document.querySelector("#allmyplayer");
  39. var src="https:"+allmyplayer.getAttribute("src");
  40. debug(src);
  41. var player = new Player(src);
  42. debug(player.url);
  43. GM_xmlhttpRequest({
  44. method: player.method,
  45. url: player.url,
  46. headers: player.headers,
  47. overrideMimeType: player.charset,
  48. //synchronous: true
  49. onload: function (responseDetails) {
  50. debug(responseDetails);
  51. var Html = new DOMParser().parseFromString(responseDetails.responseText, "text/html");
  52. debug(Html);
  53. var m3u8;
  54. var p1 = Html.querySelector('#p1');
  55. if(p1!=null){
  56. var script=p1.querySelector("script");
  57. var url=script.innerText.match(/url:\s"([\/\.\d\w]*)"/)[1];
  58. var hostname=getLocation(player.url).hostname;
  59. m3u8="https://"+hostname+url;
  60. }
  61. else{
  62. var mediaplayer1=Html.querySelector("#mediaplayer1");
  63. var script=mediaplayer1.nextElementSibling;
  64. var url=script.innerText.match(/url:\s"([:\/\.\d\w]*)"/)[1];
  65. m3u8=url;
  66. }
  67. debug(m3u8);
  68. var div=document.querySelector("div.videoWrap");
  69. var title=div.querySelector("h2").innerText;
  70. var input=document.createElement("input");
  71. input.setAttribute("type","text");
  72. input.setAttribute("value",m3u8);
  73. input.size=100;
  74. div.parentNode.insertBefore(input,div);
  75. var N_m3u8DL=document.createElement("input");
  76. N_m3u8DL.setAttribute("type","text");
  77. N_m3u8DL.setAttribute("value",'N_m3u8DL-CLI_v2.4.6 "'+m3u8+'" --headers "Referer:https://video1.yocoolnet.in/|Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" --saveName "'+title+'"');
  78. N_m3u8DL.size=100;
  79. div.parentNode.insertBefore(N_m3u8DL,div);
  80. }
  81. });
  82. }
  83. window.addEventListener('DOMContentLoaded', init);