Update update.yml
This commit is contained in:
@@ -418,6 +418,31 @@ jobs:
|
|||||||
|
|
||||||
return proxies
|
return proxies
|
||||||
|
|
||||||
|
def fix_duplicate_names(proxies):
|
||||||
|
"""Исправляет дубликаты имён, добавляя (2), (3) и т.д."""
|
||||||
|
name_counts = {}
|
||||||
|
fixed_proxies = []
|
||||||
|
|
||||||
|
for proxy in proxies:
|
||||||
|
original_name = proxy["name"]
|
||||||
|
name = original_name
|
||||||
|
|
||||||
|
if name in name_counts:
|
||||||
|
name_counts[name] += 1
|
||||||
|
new_name = f"{name} ({name_counts[name]})"
|
||||||
|
# Проверяем, нет ли уже такого имени
|
||||||
|
while new_name in name_counts:
|
||||||
|
name_counts[name] += 1
|
||||||
|
new_name = f"{name} ({name_counts[name]})"
|
||||||
|
proxy["name"] = new_name
|
||||||
|
name = new_name
|
||||||
|
else:
|
||||||
|
name_counts[name] = 1
|
||||||
|
|
||||||
|
fixed_proxies.append(proxy)
|
||||||
|
|
||||||
|
return fixed_proxies
|
||||||
|
|
||||||
def check_tcp_port(proxy):
|
def check_tcp_port(proxy):
|
||||||
try:
|
try:
|
||||||
if proxy.get("type") == "wireguard":
|
if proxy.get("type") == "wireguard":
|
||||||
@@ -497,8 +522,11 @@ jobs:
|
|||||||
print("🩺 Проверка доступности...")
|
print("🩺 Проверка доступности...")
|
||||||
alive_proxies = filter_alive_proxies(all_proxies)
|
alive_proxies = filter_alive_proxies(all_proxies)
|
||||||
|
|
||||||
|
print("🔧 Исправление дубликатов имён...")
|
||||||
|
fixed_proxies = fix_duplicate_names(alive_proxies)
|
||||||
|
|
||||||
print("📝 Генерация YAML...")
|
print("📝 Генерация YAML...")
|
||||||
config = generate_clash_config(alive_proxies)
|
config = generate_clash_config(fixed_proxies)
|
||||||
|
|
||||||
with open(OUTPUT_FILE, 'w', encoding='utf-8') as f:
|
with open(OUTPUT_FILE, 'w', encoding='utf-8') as f:
|
||||||
yaml.dump(config, f, allow_unicode=True, default_flow_style=False, sort_keys=False)
|
yaml.dump(config, f, allow_unicode=True, default_flow_style=False, sort_keys=False)
|
||||||
|
|||||||
Reference in New Issue
Block a user