屏蔽任意网址又一法!, 比 Adblock 更彻底,比 hosts 更灵活,无需重启浏览器

转自 Sociz(原 Mozine)论坛 
原贴地址: http://hall.sociz.com/index.php?showtopic=20662

对于网址的屏蔽有多种方法,使用 Adblock 扩展不能完全屏蔽一个域名,修改 hosts 文件又不能屏蔽特定的网址,也不能使用通配符。下面这个方法将给出一个另类的屏蔽对策:自动代理屏蔽。
这里加一句。看到很多人求屏蔽内嵌文字广告的扩展或者说方法,有人说用Ad Muncher 能 X 掉,这从网页解析原理上来说是不可能的,只能用隐藏的方法。

用记事本把以下代码保存为 “*.pac” 文件(扩展名为 “pac”)
代码
function FindProxyForURL(url, host)
{
    //黑名单
    if (shExpMatch(host, "114.*") ||
        shExpMatch(url, "*/ad/*"))    
        return "PROXY 0.0.0.0:0";
    else
        return "DIRECT";
}


然后在 Firefox 中设置:工具=〉选项=〉高级=〉网络=〉设置=〉自动代理配置 URL,在其中填入 “*.pac” 的本地路径,如 “file:///C:/Firefox/proxy.pac”,完成!
现在在地址栏中输入 “114.xyz.com” 或者 “www.xyz.com/ad/abc” ,都会出现如下提示:
文件附件  block_with_proxy.pac.png ( 9.96KB ) 下载次数: 28


你可以在代码中加入你想要过滤的任意网址,下面是例子
“url”表示请求的网址:
“http://adv.imhb.cn/index.php?ID=5”
“host”表示所请求网址的域名:
“adv.imhb.cn”
使用符号“*” 作为通配符匹配任意字符:
“shExpMatch(host, "*ID=7*")”
“||” 表示“或” 即或者:
“shExpMatch(host, "114.*") || shExpMatch(url, "*/ad/*")”
&&”表示“与” 即和:
“shExpMatch(host, "114.*") && shExpMatch(url, "*/ad/*")”
“!”表示“非”即不是:
“!shExpMatch(host, "114.*")”

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值