diff --git a/main.py b/main.py index 01ed79f6e..14258ea07 100644 --- a/main.py +++ b/main.py @@ -83,13 +83,20 @@ def parse_list_file(link, output_directory): os.makedirs(output_directory, exist_ok=True) result_rules = {"version": 1, "rules": []} + domain_entries = [] for pattern, addresses in df.groupby('pattern')['address'].apply(list).to_dict().items(): if pattern == 'domain_suffix': rule_entry = {pattern: ['.' + address.strip() for address in addresses]} + result_rules["rules"].append(rule_entry) + domain_entries.extend([address.strip() for address in addresses]) + elif pattern == 'domain': + domain_entries.extend([address.strip() for address in addresses]) else: rule_entry = {pattern: [address.strip() for address in addresses]} - result_rules["rules"].append(rule_entry) + result_rules["rules"].append(rule_entry) + if domain_entries: + result_rules["rules"].insert(0, {'domain': domain_entries}) # 使用 output_directory 拼接完整路径 file_name = os.path.join(output_directory, f"{os.path.basename(link).split('.')[0]}.json")