大小:1.9M 时间:2025-02-10 10:26
语言:中文 系统:Android 性质:国产软件 授权:免费软件
x浏览器无广告升级版是新绿小编自用可装油猴脚本浏览器,支持安装各种js脚本插件、拦截全网广告、嗅探vip付费视频音乐资源,最大程度保障用户上网隐私安全,让你不花钱免费白嫖资源!
回归浏览器本质,还你一个纯粹的手机浏览器。
无新闻,无推送,无后台,不足1M却小而强大,给你淋漓尽致的浏览体验!
"X" 源于英文单词 eXtreme (极致的) ,作者本身是一个极简主义者,喜欢简单极致的产品,在产品的的开发设计过程正中一直遵循保持简单极致的原则。X浏览器并不完美,但是我们一直在努力变得更好。
1、URL拦截规则
本文介绍,在X浏览器下如何撰写URL拦截规则,如果你已经对ABP的拦截规则语法比较熟识,完全可以可以使用ABP的规则语法撰写规则,X浏览器兼容ABP规则的语法规则,这里我们只介绍经X浏览器简化更易于上手的规则语法。
匹配域名的规则
单一域名规则,只要资源URL的域名可以匹配就会被命中。
示例1
最简单的情况,使用完整的域名作为拦截规则,如下所示。
www.example.com
下面这个资源URL会被规则命中。
https://www.exammple.com/paht/of/banner.js
示例2
也可以使用子域名或者和通配符一起组成拦截规则,比如下面的规则,
example.com
*.example.com
.example.com
上面的规则效果相同,选择自己习惯的写法即可,下面这些资源URL会被命中
https://a.example.com/paht/of/banner.js
https://b.example.com/paht/of/banner.js
https://en.ad.example.com/paht/of/banner.js
示例3
通配符用于模糊匹配,可以简化规则的编写,下面是更多使用通配符的例子。
ad.*.example.com
下面的资源URL会被命中
https://ad.img.example.com/paht/of/banner.js
https://ad.js.example.com/paht/of/banner.js
示例4
s*.example.com
可以命中类似下面的资源URL
https://s1.example.com/paht/of/banner.js
https://s2.example.com/paht/of/banner.js
https://s3.example.com/paht/of/banner.js
匹配路径的规则
通过路径作为匹配条件,只要路径能够匹配就会被命中,如下面的示例。
示例1
/path/of/banner.js
*/path/of/banner.js
这两条规则是等价的,可以命中下面的资源URL
https://www.example.com/path/of/banner.js
https://mydomain.com/path/of/banner.js
https://www.example.com/en/path/of/banner.js
示例2
/path/*/banner.js
同样也可以使用通配符,类似下面的资源URL都会被命中。
https://www.example.com/path/of/banner.js
https://www.example.com/path/of/first/banner.js
示例3
/path/of/banner.*
类似下面的的资源URL会被命中。
https://www.example.com/path/of/banner.js
https://www.example.com/path/of/banner.png
https://www.example.com/path/of/banner.jpg
匹配查询参数的规则
通过查询参数作为匹配条件,只要查询参数能够匹配就会被命中,如下面的示例。
示例1
&ct=bj&dit=
类似下面的资源URL可以被命中
https://www.example.com/path/of/banner.js?lang=en&ct=bj&dit=100060
示例2
使用通配符
?frm=*&ct=*&dit=
类似下面的资源URL会被命中
https://www.example.com/path/of/banner.js?frm=cn&ct=bj&dit=100080
https://www.example.com/path/of/banner.js?frm=jp&ct=tokyo&dit=100083
组合使用
通过上面的示例我们可以知道,拦截规则可以分别匹配域名、路径、查询参数,不仅如此,我们可以组合起来获取更加精确的匹配。
示例1
example.com/path/of/banner.js?frm=
可以命中类似下面资源URL
https://www.example.com/path/of/banner.js?frm=cn&ct=bj&dit=100080
https://s1.example.com/path/of/banner.js?frm=cn&ct=bj&dit=100081
示例2
使用通配符
example.com/*?frm=cn&ct=*&dit=
会命中类似下面的资源URL
https://www.example.com/path/of/banner.js?frm=cn&ct=bj&dit=100080
https://s1.example.com/service/ad/banner?frm=cn&ct=sz&dit=100024
进阶用法
使用控制参数”$3p”
3p是””third-party”的简写,有时候我们只希望我们的拦截规则只对站外的资源生效,换句话讲就是规则只应用于和当前网站域名不同的资源URL。这时候我们只需要在规则后面加入控制参数”$3p”,如下面的示例。
/path/of/banner.js$3p
假设我们当前访问的网站是 www.example.com , 规则会命中下面的资源URL
https://mydomain.com/path/of/banner.js?frm=cn&ct=bj&dit=100080
而放行下面这个资源URL
https://www.example.com/path/of/banner.js?frm=cn&ct=bj&dit=100080
使用控制参数”$~3p”
和控制参数”$3p” 相反,我们有时希望拦截规则只对站内的资源生效,换句话讲就是规则只应用于和当前网站同一域名下的资源URL。这时候我们需要用到控制参数”$~3p”,如下面的示例。
/path/of/banner.js$~3p
假设我们当前访问的网站是 www.example.com , 规则会命中下面的资源URL
https://www.example.com/path/of/banner.js?frm=cn&ct=bj&dit=100080
而放行
https://mydomain.com/path/of/banner.js?frm=cn&ct=bj&dit=100080
使用正则表达式
如果你比较熟悉正则表达式的话,可以直接通过正则表达式匹配资源URL。我们约定正则表达式规则以”–” 开头,后面紧跟正则表达式,示例如下。
--ad(\d{1,2})?\.example\.com
可以拦截类似下面的资源URL
https://ad.example.com/path/of/banner.js?frm=cn&ct=bj&dit=100080
https://ad01.example.com/path/of/banner.js?frm=cn&ct=bj&dit=100080
https://ad02.example.com/path/of/banner.js?frm=cn&ct=bj&dit=100080
但下面这些虽然很类似但是无法和正则匹配的资源URL会被放行
https://ads.example.com/path/of/banner.js?frm=cn&ct=bj&dit=100080
https://ad123.example.com/path/of/banner.js?frm=cn&ct=bj&dit=100080
增加域名作用域
为了使规则更加精确,避免误伤其他站点的资源。我们可以为规则增加域名作用域,限定规则只在作用域指定的域名下生效,格式为“规则@域名列表”,如下示例。
/path/of/banner.js@my.example.com
此规则只在域名为my.example.com 的站点可以生效
/path/of/banner.js@example.com
此规则在一级域名为example.com的站点可以生效
/path/of/banner.js@my.example.com,mysite.com,myspace.com
规则在指定的多个域名下面可以生效
组合使用
普通的规则和控制参数是可以组合在一起使用的,下面是一些合法的规则示例。
/path/of/banner.js$3p@example.com
--ad(\d{1,2})?\.example\.com$3p
/path/of/banner.js$~3p@example.com
性能建议
请优先使用不含通配符的规则,单纯的域名、路径、查询参数或则它们的组合匹配速度非常快,无需遍历查找,几十万的规则条数也不会影响其性能。
带有通配符的规则,其内部我们会转换为正则表达式的贪婪模式,众所周知,正则表达式的贪婪模式性能会比较低一些。所以尽可能优先使用不含通配符的域名、路径、查询参数的组合来撰写规则。
举例说明, 优化后的规则会有更好的额性能。
*/path/of/banner.js
example.com/ads/*
?frm=ch&ct=bj&dit=*
建议改为
/path/of/banner.js
example.com/ads/
?frm=ch&ct=bj&dit=
2、隐藏元素规则
撰写隐藏元素规则
本文介绍,在X浏览器下如何撰写隐藏元素规则,你依然可以使用ABP的规则语法撰写隐藏元素规则,下面介绍一下隐藏元素规则的写法和示例。
隐藏元素规则的写法也很简单,只需要以”##”开头作为隐藏元素规则的标识,后面紧跟CSS选择器语法即可,我们假设您已经了解了CSS选择器的基本语法,下面是一些隐藏元素规则的示例。
快速写法示例
示例1
###ad-banner
隐藏页面中元素ID为 “ad-banner” 的元素
示例2
##a[href="https://www.example.com"]
隐藏页面中所有,目标地址为https://www.example.com 的链接
示例3
##.ad-container
隐藏所有类名为”ad-container”的页面元素
##div[title*="ad"]
隐藏所有页面中存在属性”title”且属性值中包含字符串”ad”的DIV元素
限定作用域
以上都是全局生效的隐藏元素规则,为了规则更加精准减少误杀我们可以为规则限定作用域,只在特定的域名下才执行。下面是带有作用域的规则写法示例。
示例1
###ad-banner@example.com
隐藏ID为”ad-banner”的元素,只在二级域名为”example.com”的站点生效。
example.com###ad-banner
等价的ABP规则写法
示例2
###ad-banner@example.com,myspace.com
限定多个域名使用逗号分隔。
example.com,myspace.com###ad-banner
等价的ABP规则写法
性能建议
强烈建议在撰写隐藏元素规则的时候加上域名作用域的限定,不仅仅是为了防止误杀,更重要的是有了域名限定性能会更好,规则只在可以匹配的域名下才会执行,这样可以避免无谓的性能消耗。
在撰写隐藏元素规则的时候,我们应该优先使用ID和类选择器,ID选择器的性能最好,可以快速定位页面元素。 下面是理论上选择器按照性能高低排列,使用选择器的时候请优先使用性能高的选择器。
id选择器(#myid)
类选择器(.myclassname)
标签选择器(div,h1,p)
相邻选择器(h1+p)
子选择器(ul > li)
后代选择器(li a)
通配符选择器(*)
属性选择器(a[rel=”external”])
伪类选择器(a:hover,li:nth-child)
3、例外规则
如何撰写例外规则
例外规则的功能主要就是用来纠正普通的拦截规则造成的误杀,比如我们写了一条通用规则可以拦截大部分情况下的广告。但是在个别情况下造成了对正常内容的误杀,这时候我们就可以添加一条例外规则避免对正常内容的误杀。
URL拦截例外规则
“@@”作为URL拦截例外规则的标识,后面紧跟普通的URL拦截规则
举个例子,比如我们写了下面一条URL拦截规则
/path/of/ad*
这时候下面类似下面这些资源URL会被命中
https://www.example.com/path/of/ad/banner.js
https://www.example.com/path/of/ad-show.js
https://www.example.com/path/of/advanced/
但是最后一条资源URL是正常的资源内容,因为规则”/path/of/ad*” 被误杀,这时候我们就可以新增一条例外规则来避免正常的资源URL被误杀。
@@www.example.com/path/of/advanced/
这条例外规则就解决了资源上面提到的误杀问题,我们可以看到例外规则的写法很简单,就是以 “@@” 紧跟一条普通的URL规则,只不过这个URL规则不是用来匹配广告的,而是用来匹配一个被误杀的正常资源。
通常情况下,例外规则还会加入特定域名的约束,比如下面这条规则
@@/path/of/advanced@example.com
这条例外规则只在当前二级域名为 “example.com”的站点才会生效。
@@/path/of/advanced$domain=example.com
等价于上面一条列外规则,这是ABP规则的写法。
隐藏元素例外规则
“@#”作为隐藏元素例外规则的标识,后面紧跟普通的隐藏元素规则
隐藏元素的例外规则是针对全局规则的,举例说明,比如下面这条全局的隐藏元素规则。
##div[title*="ad"]
网站 www.example.com 中存在下面个页面元素会被误杀
<div tilte="advanced">
some content
</div>
这时候我们只要添加下面这条例外规则就可以避免被误杀
@#div[title*="ad"]@example.com
等价的ABP语法如下
example.com#@#div[title*="ad"]
4、强力拦截模式和规则
强力广告拦截模式是X浏览器在早期做的一个创新的拦截策略,其优点是简单高效,本文来介绍强力拦截的基本原理以及X浏览器提供的适用于强力拦截模式下的规则语法。
原理
在强力拦截模式下,浏览器会自动拦截不属于该域名下的所有资源,通常情况下一些广告资源来自于第三方的广告服务器,强力拦截的基本策略就是只放行当前域下的资源和脚本,根据一些特定的算法配合给定的拦截规则放行一些常规的第三方的资源和脚本。
这种策略是和常规的广告拦截是相反的,换句话讲,常规的广告拦截是通过一系列规则识别广告进行拦截,而强力拦截是通过规则识别正常的第三方资源和脚本进行放行。
在强力拦截模式下,普通的拦截规则依然也会生效,只是在强力拦截模式下即便在没有订阅很多常规拦截规则依赖可以达到很好的拦截效果,由于不用依赖大量的常规规则,拦截性能也是非常好的。缺点就是可能会存在误伤正常的第三方资源,这个时候我们就需要通过特定强力拦截规则对正常第三方资源和脚本进行放行。下面介绍强力拦截模式下的规则语法。
语法规则
强力拦截的规则以 “==” 作为规则的标识符前缀,后面紧跟关键字,多个关键字可以使用逗号分隔。
全局规则
==jquery
==m3u8
==mp4
==cdnjs.com
==github.com
==cdn.jsdelivr.net
下面是等价的写法
==jquery,m3u8,mp4,cdnjs.com,github.com,cdn.jsdelivr.net
域名作用域规则
==jquery@example.com
==mp4@example.com
==m3u8@example.com
下面是等价的写法
==jquery,mp4,m3u8@example.com
扩展插件
支持油猴脚本、JS脚本、本地扩展,按需提升浏览器能力。
极速轻便
不足1M大小,占用极少资源,启动秒开
安全隐私
提供了丰富的隐私设置选项,最大限度的保护用户数据安全及隐私.
强大的资源嗅探能力,轻松下载保存网络资源,图片,音频,视频一个都不能少。
极简绿色
极简干净整洁的界面交互,无新闻,无推送,无后台服务,省流省电资源嗅探个性化
非常多的个性化配置选项,总能调教的适合你的口味
标识广告
拦截广告
新建书签
无痕模式
桌面模式
夜间模式
离线网页
护眼模式
基本设置
手势设置
高级拦截
浏览器扩展
浏览器脚本
用户中心
v5.0.3 build 921
修复了从黑暗模式下切换到日间模式下主页主题无法立即更新的问题
修复了主页在黑暗模式或黑色背景下搜索框和快速访问文字显示不清楚的问题
修复了Google翻译失效,以及Google翻译存在的安全漏洞问题
修复了由于个别拦截规则解析错误导致拦截规则失效的问题
修复了某些设备在沉浸模式下导致本地页面和设置页面出现白屏的问题
修复删除自定义ua无法恢复默认ua的问题。
修复了无痕模式下无法禁用cookies的问题。
退出浏览器时不保存无痕标签。
显示全部
手机浏览器推荐
网友评论