1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
|
function main(config, profileName) { config = removeNodeByName(config, /[kK]onghwaguk/g);
config = addAITestGroup(config); config = addProxyRules(config);
config = addDirectRules(config);
return config; }
function addAITestGroup(config) { if (!config['proxy-groups'] || !config.proxies) return config;
const aiNodes = config.proxies.filter(p => p.name && /(美国|usa|united\s?states|台湾|taiwan|新加坡|singapore)/i.test(p.name) ).map(p => p.name);
const groupIndex = config['proxy-groups'].findIndex(g => g.name === 'AI代理组'); if (groupIndex !== -1) { config['proxy-groups'][groupIndex].proxies = aiNodes; } else { config['proxy-groups'].push({ name: 'AI代理组', type: 'url-test', proxies: aiNodes, url: 'http://www.gstatic.com/generate_204', interval: 500 }); } return config; }
function removeNodeByName(config, regExp) { config['proxy-groups'] = config['proxy-groups'].map(it => { it.proxies = it.proxies.filter(name => !name.match(regExp)); return it; }); return config; }
function addProxyRules(config) { config.rules = myProxyRules.concat(config.rules); return config; }
function addDirectRules(config) { config.rules = myDirectRules.concat(config.rules); return config; }
const myProxyRules = [ "DOMAIN-SUFFIX,openai.com,AI代理组", "DOMAIN-SUFFIX,anthropic.com,AI代理组", "DOMAIN-KEYWORD,claude,AI代理组", "DOMAIN-KEYWORD,chatgpt,AI代理组", "DOMAIN-KEYWORD,generativelanguage,AI代理组", "DOMAIN-KEYWORD,arcgis,AI代理组", "DOMAIN-KEYWORD,google,AI代理组", ];
const myDirectRules = [
"DOMAIN-KEYWORD,pubmed,DIRECT", "DOMAIN-KEYWORD,springer,DIRECT", "DOMAIN-KEYWORD,ieee,DIRECT", "DOMAIN-KEYWORD,elsevier,DIRECT", "DOMAIN-KEYWORD,steam,DIRECT", "DOMAIN-KEYWORD,clarivate,DIRECT", "DOMAIN-KEYWORD,sciencedirect,DIRECT", "DOMAIN-KEYWORD,webofscience,DIRECT", "DOMAIN-KEYWORD,nature,DIRECT", "DOMAIN-KEYWORD,tandfonline,DIRECT", "DOMAIN-KEYWORD,taylorfrancis,DIRECT", "DOMAIN-KEYWORD,cherrystudio,DIRECT", "DOMAIN-KEYWORD,taylorandfrancis,DIRECT", "DOMAIN-KEYWORD,elsevier.com,DIRECT", "DOMAIN-KEYWORD,onlinelibrary.wiley.com,DIRECT", "DOMAIN-KEYWORD,els-cdn.com,DIRECT", "DOMAIN-KEYWORD,tuchong.com,DIRECT", "DOMAIN-KEYWORD,dl.acm.org,DIRECT", "DOMAIN-KEYWORD,acm-prod.disqus.com,DIRECT", "DOMAIN-KEYWORD,readspeaker.com,DIRECT", "DOMAIN-KEYWORD,webofknowledge.com,DIRECT", "DOMAIN-KEYWORD,taylorfrancis.com,DIRECT", "DOMAIN-KEYWORD,tandfonline.com,DIRECT", "DOMAIN-KEYWORD,rp.tandfonline.com,DIRECT",
];
|