Added single domains for clashx

This commit is contained in:
itdoginfo 2024-12-12 16:55:50 +03:00
parent b3485341e9
commit da3b363f96
No known key found for this signature in database
GPG key ID: 4D49CCAC75E438EA

View file

@ -61,8 +61,9 @@ def dnsmasq(src, out, single=None, remove={'google.com'}):
for name in domains:
file.write(f'ipset=/{name}/vpn_domains\n')
def clashx(src, out, remove={'google.com'}):
def clashx(src, out, single=None, remove={'google.com'}):
domains = set()
domains_single = set()
for f in src:
with open(f) as infile:
@ -73,6 +74,15 @@ def clashx(src, out, remove={'google.com'}):
if not tldextract.extract(line).domain and tldextract.extract(line).suffix:
domains.add("." + tldextract.extract(line.rstrip()).suffix)
if single is not None:
with open(single) as infile:
for line in infile:
if tldextract.extract(line).suffix:
if re.search(r'[^а\-]', tldextract.extract(line).domain):
domains_single.add(tldextract.extract(line.rstrip()).fqdn)
domains = domains.union(domains_single)
domains = domains - remove
domains = sorted(domains)
@ -153,7 +163,7 @@ if __name__ == '__main__':
raw(inside_lists, rusDomainsInsideOut)
dnsmasq(inside_lists, rusDomainsInsideOut, rusDomainsInsideSrcSingle, removeDomains)
clashx(inside_lists, rusDomainsInsideOut, removeDomains)
clashx(inside_lists, rusDomainsInsideOut, rusDomainsInsideSrcSingle, removeDomains)
kvas(inside_lists, rusDomainsInsideOut, rusDomainsInsideSrcSingle, removeDomainsKvas)
mikrotik_fwd(inside_lists, rusDomainsInsideOut, rusDomainsInsideSrcSingle, removeDomains)