|
```javascript
// ==UserScript==
// @name 宇宙网络安全盾
// @namespace http://tampermonkey.net/
// @version 1.3
// @description 阻止访问指定域名,并执行精确关键词过滤
// @author Your Name
// @match *://*/*
// @grant none
// @run-at document-start
// ==/UserScript==
(function() {
'use strict';
const blacklist = [
// 腾讯系
'qq.com', 'wechat.com', 'weixin.com', 'qzone.com', 'tencent.com', 'soso.com', 'tenpay.com', 'qqmail.com', 'qqmusic.com', 'qqlive.com', 'qidian.com', 'pengyou.com', 'paipai.com', 'tengxun.com', 'kuaibao.qq.com', 'weishi.qq.com', 'myapp.com', 'wanggou.com', 'qqgame.com', 'pvp.qq.com', 'lol.qq.com', 'game.qq.com', 'qqbrowser.com', 'midas.qq.com', 'qun.qq.com', 'tim.qq.com', 'gtimg.com', 'qq.com.cn', 'tencentgames.com', 'qqshow.com', 'weiyun.com', 'maoyan.com', 'huya.com', 'douyu.com', 'qqnews.qq.com', 'qcloud.com', 'kuaibao.qq.com', 'qqmap.com', 'qqlive.com', 'qqbaobao.com', 'im.qq.com', 'read.qq.com', 'qqxy.qq.com', 'bbs.qq.com', 'gdt.qq.com', 'qqreader.qq.com', 'open.qq.com', 'qqzhibo.com', 'foxmail.com', 'sogou.com', 'youku.com', 'qplus.com', 'v.qq.com', 'doc.qq.com', 'meeting.qq.com', 'class.qq.com', 'comic.qq.com', 'jushou.ourgame.com', 'yoo.qq.com',
// 阿里系
'aliyun.com', 'taobao.com', 'tmall.com', 'alipay.com', 'dingtalk.com', 'koubei.com', '1688.com', 'aliexpress.com', 'taopiaopiao.com', 'youku.com', 'ucweb.com', 'xiami.com', 'cainiao.com', 'etao.com', 'laiwang.com', 'net.cn', 'alimama.com', 'alicdn.com', 'tmall.hk', 'aliyun.com',
// 字节跳动系
'bytedance.com', 'toutiao.com', 'douyin.com', 'ixigua.com', 'pipix.com', 'huoshan.com', 'musical.ly', 'zjbyte.com', 'byteimg.com',
// 快手系
'kuaishou.com', 'kwai.com', 'yoo.qq.com',
// 百度系
'baidu.com', 'haokan.com', 'tieba.com', 'hanyu.baidu.com', 'map.baidu.com', 'baike.baidu.com', 'fanyi.baidu.com', 'baiducontent.com', 'baidustatic.com', 'aipage.baidu.com',
// 美团系
'meituan.com', 'dianping.com', 'meituan.net', 'maoyan.com', 'mobike.com',
// 哔哩哔哩
'bilibili.com', 'b23.tv', 'biligame.com', 'biliapi.com',
// 知乎
'zhihu.com', 'zhimg.com',
// 微博
'weibo.com', 'sina.com.cn', 'weibo.cn',
// 京东
'jd.com', 'jd.hk', 'jd.id', 'joybuy.com',
// 拼多多
'pinduoduo.com', 'yangkeduo.com',
// 小红书
'xiaohongshu.com', 'xhslink.com',
//其它
'xiaohongshu.com', 'xhslink.com', 'meituan.com', 'dianping.com', 'bilibili.com', 'b23.tv', 'zhihu.com', 'weibo.com', 'jd.com', 'pinduoduo.com', 'yangkeduo.com', 'vip.com', 'kaola.com', 'netease.com', '163.com', 'youdao.com', 'xinhuanet.com', 'people.com.cn', 'ifeng.com', 'hexun.com', 'sohu.com', 'sina.com.cn', 'yiche.com', 'autohome.com.cn', 'che168.com', 'ganji.com', '58.com', 'anjuke.com', 'fang.com', 'zhaopin.com', 'liepin.com', '51job.com', 'mgtv.com', 'iqiyi.com', 'le.com', 'pptv.com', 'douban.com', 'ximalaya.com', 'dedao.cn', 'kaola.com', 'tianya.cn', 'mop.com', 'douyu.com', 'huya.com', 'douyin.com', 'ixigua.com', 'kuaishou.com', 'kwai.com'
];
const currentDomain = window.location.hostname;
if (blacklist.some(domain => currentDomain.includes(domain)) || exactKeywordFilter(currentDomain)) {
stopImmediateLoad();
}
function stopImmediateLoad() {
document.documentElement.innerHTML = '';
document.documentElement.style.display = 'none';
alert('This domain is blocked.');
}
function exactKeywordFilter(domain) {
const keywords = blacklist.map(domain => domain.split('.')[0]);
let keywordCount = 0;
for (let keyword of keywords) {
const regex = new RegExp(`(^|\\.)${keyword}(\\.|$)`);
if (regex.test(domain)) {
keywordCount++;
}
}
return keywordCount >= 2;
}
})();
``` |
|