Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name KissAnime Anti-Adblock Blocker
- // @author Swyter
- // @namespace userscripts.org/user/swyter
- // @description Not even the people from Easylist seem to fight this site anymore, someone had to try as this looks popular enough. *sigh*
- // @match *://kissanime.com/*
- // @match *://kisscartoon.me/*
- // @match *://kissanime.to/*
- // @match *://kissasian.com/*
- // @match *://kissmanga.com/*
- // @match *://readcomiconline.to/*
- // @match *://kissanime.ru/*
- // @match *://kisscartoon.se/*
- // @version 2017.04.01.3
- // @grant none
- // @run-at document-start
- // ==/UserScript==
- console.log('Started KissAnime Anti-Adblock Blocker, waiting for the DOM to load...');
- window.addEventListener('beforescriptexecute', function(e)
- {
- /* typical js kludge, holy carp, that's convoluted! */
- var element_host = ((tmp = document.createElement('a')).href = e.target.src) && tmp.host;
- if (e.target.src && element_host !== document.domain &&
- element_host !== document.domain.split('.')[0] + '.disqus.com') e.preventDefault();
- if (!e.target.src)
- for (var i of ['charCodeAt', 'BB_', 'taboola', 'plusone', 'analytics'])
- if (e.target.textContent.indexOf(i) != -1)
- e.preventDefault();
- console.log('[i] blocking script element: ', e.defaultPrevented, e.target.src);
- });
- /* let's hook the AJAX requests, just in case, and filter out the so-called 'ban'
- avoiding potential fake points loss and such, what a scummy move by the site owner */
- (function (xhr_proto_open)
- {
- window.XMLHttpRequest.prototype.open = function(method, url)
- {
- var element_host = ((tmp = document.createElement('a')).href = url) && tmp.host;
- console.log(element_host);
- if (url.match(/ban|Banned|GotBanned/gi) !== null)
- {
- console.info("[x] intercepted shitty 'ban' request!", arguments);
- this.abort();
- }
- else if (url && element_host !== document.domain && element_host !== document.domain.split('.')[0] + '.disqus.com')
- {
- console.info("[x] intercepted cross-domain request!", arguments);
- this.abort();
- }
- else
- {
- xhr_proto_open.apply(this, arguments);
- }
- };
- }(XMLHttpRequest.prototype.open));
- /* override the check in Chrome and call it a day */
- try
- {
- Object.defineProperty(window, 'DoDetect2',
- {
- configurable: false,
- writable: false,
- value: function()
- {
- console.info('[/] check overriden!');
- }
- });
- } catch(e) {}
- window.addEventListener('DOMContentLoaded', function(e)
- {
- console.log('DOM loaded, processing stuff...');
- /* get rid of the cruft */
- for (var elem of document.querySelectorAll(`
- iframe[src*='ad']:not([src*='openload']),
- .divCloseBut,
- .clear2,
- div[style*='!important'],
- div[id^='divFloat'],
- .episodeList div[style$='float: left;'],
- .episodeList .clear,
- div[style$='height:80px'],
- img[id^='adCheck'],
- div[id^=adsFloat][style],
- div[id^=btnClose],
- div[style*='width:800px'],
- div[id*=fl-ads].rf-container,
- iframe[src*='Ads'],
- iframe[src*='facebook'],
- div[style*='300px'][style*='250px'],
- div[style*='margin: 0px auto'],
- div[style*='height: 600px'],
- div[style*='820px'][style*='215px'],
- div[style*='728px'][style*='200px'],
- li#liFlappy, li#liReportError,
- body > script[src],
- script[data-cfasync],
- iframe[src*='check.aspx']
- `))
- {
- console.log('[-] removing cruft: ', elem);
- elem.parentElement.removeChild(elem);
- }
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement