INNER CODE UNIT · Python

addresses

ermaozi/get_subscribe · check_nodes.py:93

    addresses = list(dict.fromkeys(a for a in proxy_addresses + uri_addresses if a is not None))
    with ThreadPoolExecutor(max_workers=WORKERS) as pool:
        results = dict(zip(addresses, pool.map(tcp_status, addresses)))
    summary = {'checked_at': datetime.now(timezone.utc).isoformat(), 'method': 'TCP connect',
               'timeout_seconds': TIMEOUT, 'unique_endpoints': len(addresses), 'counts': {}}
    all_names = {proxy['name'] for proxy in proxies}
    for status in STATUSES:
        selected = [p for p, address in zip(proxies, proxy_addresses) if results.get(address, 'untested') == status]
        selected_uris = [uri for uri, address in zip(uris, uri_addresses) if results.get(address, 'untested') == status]
        removed = all_names - {proxy['name'] for proxy in selected}
        filtered = {**config, 'proxies': selected}
        groups = []
        for group in config.get('proxy-groups', []):
            group = dict(group)
            if 'proxies' in group:
                group['proxies'] = [name for name in group['proxies'] if name not in removed] or ['REJECT']
            groups.append(group)
        if 'proxy-groups' in config:

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…