bypass.me

Bypass viid.me (present on dpstream.net by example) and sh.st. Thanks to the site checkshorturl.com. By adding good includes, must work with adf.ly, etc.

目前为 2018-01-16 提交的版本。查看 最新版本

  1. // ==UserScript==
  2. // @name bypass.me
  3. // @name:fr bypass.me
  4. // @description Bypass viid.me (present on dpstream.net by example) and sh.st. Thanks to the site checkshorturl.com. By adding good includes, must work with adf.ly, etc.
  5. // @description:fr Permet de contourner les 5 secondes de viid.me et sh.st (liens présents sur dpstream.net par exemple). Doit aussi marcher avec adf.ly ou d'autre, à essayer
  6. // @include http://viid.me/*
  7. // @include http://sh.st/*
  8. // @include http://clkmein.com/*
  9. // @include http://corneey.com/*
  10. // @include http://destyy.com/*
  11. // @include http://gestyy.com/*
  12. // @include https://www.dpstream.net/external_link/*
  13. // @include https://www.dpstream.net/*
  14. // @grant GM_xmlhttpRequest
  15. // @run-at document-start
  16. // @version 3
  17. // @namespace https://greasyfork.org/users/92186
  18. // @run-at document-start
  19. // ==/UserScript==
  20.  
  21.  
  22. function cleaning() {
  23.  
  24. try {
  25. document.getElementsByTagName("table")[0].deleteRow(1);
  26. document.getElementById("loginModelForNotConnected").remove();
  27. }
  28. catch(e) {}
  29.  
  30. }
  31.  
  32.  
  33. if(document.URL.includes("https://www.dpstream.net/external_link/")) {
  34.  
  35. window.onload = function(){
  36.  
  37. var myregex = /onclick=\"window.open\(\\'(.*)\\',/g;
  38. var match = myregex.exec(document.body.innerHTML);
  39.  
  40. if(match.length == 2) {
  41. location.href = match[1];
  42. } else {
  43. var apiUrl = 'http://checkshorturl.com/expand.php?u=';
  44. var shortUrl = document.URL;
  45.  
  46. window.stop();
  47.  
  48. var ret = GM_xmlhttpRequest({
  49. method: "GET",
  50. url: apiUrl + shortUrl,
  51. onload: function(res) {
  52. var div = document.createElement('div');
  53. div.innerHTML = res.responseText ;
  54. var result = div.getElementsByTagName('table')[0].rows[0].cells[1];
  55. expandedUrl = result.textContent;
  56. location.href = expandedUrl;
  57.  
  58. }
  59. });
  60. }
  61. };
  62. }
  63.  
  64. window.onload = function () {
  65.  
  66. var target = document.getElementById("episodeItemsContent");
  67.  
  68. var observer = new MutationObserver(cleaning);
  69. var config = { attributes: true, childList: true, characterData: true };
  70. observer.observe(target, config);
  71.  
  72. cleaning();
  73. };