File size: 4,205 Bytes
85fd511 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 | from typing import List
from app.models import SourceConfig, SourceType
class SourceRegistry:
"""
Registry of auto-updated GitHub proxy list sources.
These repositories auto-update daily/hourly with fresh proxies.
"""
SOURCES: List[SourceConfig] = [
SourceConfig(
url="https://raw.githubusercontent.com/TheSpeedX/PROXY-List/master/http.txt",
type=SourceType.GITHUB_RAW,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/proxifly/free-proxy-list/main/proxies/protocols/http/data.txt",
type=SourceType.GITHUB_RAW,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/roosterkid/openproxylist/main/HTTPS_RAW.txt",
type=SourceType.GITHUB_RAW,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/mmpx12/proxy-list/master/http.txt",
type=SourceType.GITHUB_RAW,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/mmpx12/proxy-list/master/https.txt",
type=SourceType.GITHUB_RAW,
enabled=True,
),
# V2Ray / VMess / VLESS / Trojan / Shadowsocks Sources
SourceConfig(
url="https://raw.githubusercontent.com/vorz1k/v2box/main/supreme_vpns_1.txt",
type=SourceType.SUBSCRIPTION_BASE64,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/Sage-77/V2ray-configs/main/vmess.txt",
type=SourceType.SUBSCRIPTION_BASE64,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/Sage-77/V2ray-configs/main/vless.txt",
type=SourceType.SUBSCRIPTION_BASE64,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/Sage-77/V2ray-configs/main/trojan.txt",
type=SourceType.SUBSCRIPTION_BASE64,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/Sage-77/V2ray-configs/main/ss.txt",
type=SourceType.SUBSCRIPTION_BASE64,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/Sage-77/V2ray-configs/main/config.txt",
type=SourceType.SUBSCRIPTION_BASE64,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/Zaeem20/FREE_PROXIES_LIST/master/http.txt",
type=SourceType.GITHUB_RAW,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/TopChina/proxy-list/main/http.txt",
type=SourceType.GITHUB_RAW,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/officialputuid/KangProxy/KangProxy/http/http.txt",
type=SourceType.GITHUB_RAW,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/gfpcom/free-proxy-list/main/http.txt",
type=SourceType.GITHUB_RAW,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/monosans/proxy-list/main/proxies/http.txt",
type=SourceType.GITHUB_RAW,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/monosans/proxy-list/main/proxies_anonymous/http.txt",
type=SourceType.GITHUB_RAW,
enabled=True,
),
SourceConfig(
url="https://raw.githubusercontent.com/zloi-user/hideip.me/main/http.txt",
type=SourceType.GITHUB_RAW,
enabled=True,
),
]
@classmethod
def get_enabled_sources(cls) -> List[SourceConfig]:
return [source for source in cls.SOURCES if source.enabled]
@classmethod
def get_all_sources(cls) -> List[SourceConfig]:
return cls.SOURCES
|