AWAvenue-Ads-Rule/config.py
elysias123 0647a71c01
Some checks are pending
build Rule / execute_python_script (push) Waiting to run
update dns query
2025-05-19 11:50:28 +08:00

32 lines
1.2 KiB
Python

import os
import dns.resolver
SCRIPT_PATH = os.path.join(os.getcwd(), "script") # 插件文件夹
RULE_PATH = os.path.join(os.getcwd(), "rule") # 规则文件夹
OUT_PATH = os.getcwd() + "/out" # 输出文件夹
domain_file=RULE_PATH + "/domain.txt" # 规则文件
regex_file=RULE_PATH + "/domain_regex.txt" # 正则规则文件
ip_file=RULE_PATH + "/ip.txt" # IP规则文件
ip6_file=RULE_PATH + "/ip6.txt" # IPv6规则文件
def check_domain(domain):
resolver = dns.resolver.Resolver(configure=False)
resolver.nameservers = [ '223.5.5.5', '119.29.29.29', '8.8.8.8', '1.1.1.1', '2400:3200:baba::1']
resolver.timeout = 3
resolver.lifetime = 5
result = {"A": False, "AAAA": False}
try:
A = resolver.resolve(domain, "A", raise_on_no_answer=False)
result["A"] = bool(A and A.rrset)
except Exception as e:
print(f"{domain} 解析 A 记录时出错 从domain_list中去除 {e}")
try:
AAAA = resolver.resolve(domain, "AAAA", raise_on_no_answer=False)
result["AAAA"] = bool(AAAA and AAAA.rrset)
except Exception as e:
print(f"{domain} 解析 AAAA 记录时出错 从domainv6_list中去除 {e}")
return result