页首Html代码

返回顶部

去除 华军 恶心的广告验证码

比如这个链接: http://www.onlinedown.net/softdown/17276_2.htm

验证码 有时候很恶心 是一些烦人的广告,你在这里 只让输入数字 就够了,非要输入 广告中的文字,过分了。

虽然华军 这个广告验证码很新颖,有创意,但是 真的过分了。于是我搜索 ”去除 华军验证码“

找到了:http://userscripts.org/scripts/show/129215 【onlinedown.no.ads –去除华军软件园下载页面的验证码和广告】

进入网站 的 右上角 install ,然后点击下载 js文件,打开

谷歌浏览器chrome 的扩展程序页面,将js拖进去,自动安装了,太好了。

chrome会自动生成一个 扩展

比如:

%userprofile%\AppData\Local\Google\Chrome\User Data\Default\Extensions\kooplkpgddpimbhcbkmpknimodcdkpol\1.0_0

自动添加一个 manifest.json文件

内容如下:

{
   "content_scripts": [ {
      "exclude_globs": [  ],
      "exclude_matches": [  ],
      "include_globs": [  ],
      "js": [ "script.js" ],
      "matches": [ "http://*.newhua.com/softdown/*", "http://*.onlinedown.net/softdown/*" ],
      "run_at": "document_idle"
   } ],
   "converted_from_user_script": true,
   "description": "Onlinedown.No.Ads",
   "key": "pUGrGaNVMwL4d5uceRxxspIUPaJj8lgFC8g0K0oUeh4=",
   "name": "Onlinedown.No.Ads",
   "version": "1.0"
}

原来在js文件头有这样的声明:

// ==UserScript==
// @name           Onlinedown.No.Ads
// @namespace      Onlinedown.No.Ads
// @description    Onlinedown.No.Ads
// @version        2.01
// @match          http://*.onlinedown.net/softdown/*
// @match          http://*.newhua.com/softdown/*
// ==/UserScript==

所以 chrome自动从js文件 获取了扩展信息,才能安装。

感谢 :http://opengg.me/ 鲁夫的爱,貌似他还有个 OpenGG.Clean.Player ,可以将 优酷 五六 之类的视频上的广告给去掉,其实是替换了swf文件。

 

这个js文件 用浏览器运行 应该还可以 使用 javascript:alert('helloWorld');return 0;  类似的方法,将 远程js文件  给通过createElement加载一个script javascript的方式。我就不研究了

 

再次 鄙视 哪些 太过分的网站 或 公司。

js文件也不多 就3.49KB,我贴出来学习下:

View Code
// ==UserScript==
// @name           Onlinedown.No.Ads
// @namespace      Onlinedown.No.Ads
// @description    Onlinedown.No.Ads
// @version        2.01
// @match          http://*.onlinedown.net/softdown/*
// @match          http://*.newhua.com/softdown/*
// ==/UserScript==
(function () {
    'use strict';
    var UTILS = {
        isArrayLike: function (obj) {
            if (typeof obj !== 'object') {
                return false;
            }
            var types = ['Array', 'NodeList', 'HTMLCollection'];
            for (var i = 0; i < types.length; ++i) {
                if (Object.prototype.toString.call(obj).indexOf(types[i]) !== -1) {
                    return true;
                }
            }
            return false;
        },
        forEach: function (arr, callback) {
            if ((typeof arr === 'object') && UTILS.isArrayLike(arr) && UTILS.isFunction(callback)) {
                for (var i = 0; i < arr.length; ++i) {
                    callback.call(arr[i], arr[i]);
                }
                return;
            }
            if((typeof arr === 'string') && UTILS.isFunction(callback)){
                arr = document.querySelectorAll(arr);
                UTILS.forEach(arr,callback);
            }
        },
        remove: function (dom) {
            if (typeof dom === 'string') {
                UTILS.remove(document.querySelectorAll(dom));
                return;
            }
            if ((typeof dom === 'object') && UTILS.isArrayLike(dom)) {
                UTILS.forEach(dom, function () {
                    UTILS.remove(this);
                });
                return;
            }
            if (dom && dom.parentNode && dom.parentNode.removeChild) {
                dom.parentNode.removeChild(dom);
            }
        },
        die: function (dom,arr) {
            if (typeof dom === 'string') {
                UTILS.die(document.querySelectorAll(dom),arr);
                return;
            }
            if ((typeof dom === 'object') && UTILS.isArrayLike(dom)) {
                UTILS.forEach(dom, function () {
                    UTILS.die(this,arr);
                });
                return;
            }
            var attrs = ['onclick', 'onsubmit', 'style', 'onmouseover', 'onmouseout'];
            if(arr&&UTILS.isArrayLike(arr)){
                attrs = attrs.concat(arr);
            }
            UTILS.forEach(attrs, function (a) {
                if (dom && dom[a]) {
                    try {
                        dom[a] = null;
                    } catch (e) {}
                }
                if (dom && dom.removeAttribute) {
                    dom.removeAttribute(a);
                }
            });
        },
        addCss: function (str) {
            var style = document.createElement('style');
            style.textContent = str;
            document.head.appendChild(style);
        },
        isFunction: function (func) {
            return typeof func === 'function';
        },
        proxy: function (callback) {
            var script = document.createElement('script');
            script.textContent = 'try{(' + callback.toString() + ')();}catch(e){}';
            document.body.appendChild(script);
        },
        tips: function () {
            var html = '<div class="tips_container">Onlinedown.No.Ads \u5DF2\u542F\u7528&emsp;<a href="http://opengg.me/760/onlinedown-no-ads/" style="color:blue" target="_blank" title="\u6709\u95EE\u9898\u70B9\u6B64\u53CD\u9988">\u53CD\u9988</a>&emsp;<a href="http://opengg.me/donation/" style="color:red" title="\u6211\u8981\u6350\u52A9\u6B64\u9879\u76EE" target="_blank">\u6350\u52A9</a></div>';
            var css = '.tips_container{position:fixed;top:2em;right:2em;color:green;opacity:0.4;background:#fff;padding:10px}.tips_container:hover{opacity:0.9}.tips_container #toggleGoogle{color:red;cursor:pointer}';
            UTILS.addCss(css);
            var div = document.createElement('div');
            // div.style.position = 'relative';
            div.innerHTML = html;
            document.body.insertBefore(div, document.body.childNodes[0]);
        }
    };
    UTILS.tips();
    UTILS.addCss('.checkbackground,.down_verify{display:none !important}');
    UTILS.die('.title+.urlist a',['href']);
    UTILS.proxy(function(){
        showDownlist(2,'checkok');
    });
})();
posted @ 2012-10-22 21:10  ayanmw  阅读(607)  评论(0编辑  收藏  举报

页脚Html代码