Мощный, многопоточный чекер прокси V2Ray/Xray
Быстро. Жестко. Эффективно. - все как я люблю.
Главное меню v1.1.3
MK_XRAYchecker — Утилита на Python для массовой проверки доступности и задержки V2Ray/Xray прокси. Скрипт парсит конфиги из файлов или URL (Например GitHub Raw), декодирует Base64 (и другие форматы), создает временные конфиги и проверяет их через реальное ядро Xray или Mihomo.
- Поддержка протоколов:
VMess,VLESS,Trojan,Shadowsocks,Hysteria2. - Парсинг: Извлекает прокси из "каши" текста, Base64 строк, ссылок-подписок.
- Подписки: Поддерживает URL-подписки в формате ссылок и
Clash/MihomoYAML (proxies:), включая Base64-обёртку.- (Ну, то есть скрипту практически похуй в каком виде ты скормишь ему ссылки.)
- Batch Mode: 1 ядро = 1 пачка прокси (для
xrayвнутри пачки проверки идут параллельно). UP TO 1337 BATCHES. - Режимы работы: Красивое меню или CLI аргументы.
- Сортировка: Автоматически сортирует рабочие прокси по пингу или скорости.
- Отсев по ping: Можно задать порог
max_ping_ms(например500) и автоматически выкидывать медленные прокси. - SpeedTest: Проверка скорости скачивания (опционально).
- Rich UI: Ну всякие загрузочки менюшечки красивые.
- Конфиг: Гибкий конфиг, с множеством параметров.
- Debug artifacts: При падении ядра сохраняет
batch*.jsonи лог в./failed_batches+ печатает команду воспроизведения. - Self-test URL: Быстрый тест парсинга (чинит кейсы
&,&%3B,%26amp%3B). - Безопаснее SS: фильтрует Shadowsocks-ссылки с неподдерживаемыми шифрами (AEAD-only whitelist), чтобы не ловить
Exit: 23. - Более строгий REALITY: валидирует
pbk(base64url → строго 32 байта) и нормализуетsid(shortId hex). - Self-Update: умеет обновлять
v2rayChecker.pyиaggregator.pyиз GitHub репозитория (staged.new+update.pending+ перезапуск). - Auto-install core: умеет автоматически ставить
xrayилиmihomo(поpreferred_core) в./bin. - Свитч ядра: переключение
auto/xray/mihomoчерез CLI (--engine) или через интерактивное меню.
Скрипт может проверять обновления на старте и подтягивать свежие python-файлы из GitHub Releases (fallback на raw VERSION).
- При наличии апдейта скачиваются обновлённые файлы и сохраняются как
*.new, создаётсяupdate.pending, затем скрипт перезапускается. - На следующем запуске
apply_pending_update_if_any()применяет staged обновления (замена файлов +.bak).
- CLI:
--no-update(полностью пропустить проверку). - Конфиг:
autoupdate:true— обновляется автоматически без вопросов.false— если версия устарела, спросит подтверждение.
Для работы скрипта нужно одно из ядер:
xray/xray.exemihomo/mihomo.exe
По умолчанию включена автоустановка: если ядра нет — скрипт попытается скачать архив из релизов и распаковать в ./bin.
- Выбери релизы нужного ядра:
👉 Xray-core releases
👉 Mihomo releases - Скачай архив под свою ОС/архитектуру.
- Распакуй и положи бинарник рядом со скриптом или в
./bin(xray.exe/mihomo.exe).
📂 Рекомендуемая структура:
v2rayChecker.pyupdater.py(для self-update)xray_installer.py(для автоустановки ядра)bin/xray.exeилиbin/xraybin/mihomo.exeилиbin/mihomoaggregator.py(опционально, для--agg)
git clone https://github.com/MKultra6969/MK_XRAYchecker
cd MK_XRAYcheckerpip install -r requirements.txtИнтерактивный режим (Меню):
python v2rayChecker.pyCLI (примеры):
# Проверка из файла
python v2rayChecker.py -f "proxies.txt"
# Проверка по ссылке-подписке
python v2rayChecker.py -u "https://example.com/sub"
# Указать количество потоков и таймаут
python v2rayChecker.py -f "list.txt" -T 50 -t 2
# Запустить без проверки обновлений
python v2rayChecker.py --no-updateКлючи добавляются автоматически при первом запуске (или при появлении новых полей).
autoupdate:true/false— автообновление скрипта.repo_owner,repo_name,repo_branch— откуда подтягивать апдейты (GitHub).autoinstall_xray:true|false— автоустановка ядра при отсутствии.xray_version:"latest"или конкретный тег (например"v1.8.10").autoinstall_mihomo:true|false— автоустановкаmihomoпри отсутствии.mihomo_version:"latest"или конкретный тег.preferred_core:"auto"/"xray"/"mihomo"— режим выбора ядра.max_ping_ms: порог ping в миллисекундах для отсева (0= отключено).core_path: путь к ядру (напримерxray,bin/xray,bin/mihomo).
Проверка, что URL-парсер корректно обрабатывает HTML/URL-экранирование в параметрах (security/pbk/sid/flow/...).
python v2rayChecker.py --self-testРежим для отладки: 1 прокси на batch и 1 поток, чтобы быстро находить “плохие” ссылки/конфиги.
python v2rayChecker.py -f "proxies.txt" --debugЕсли ядро не запустилось, скрипт сохранит файлы в ./failed_batches и покажет команду воспроизведения для текущего ядра.
| Аргумент | Описание |
|---|---|
-m, --menu |
Принудительный запуск интерактивного меню |
-f, --file |
Путь к .txt с прокси или со списком URL-подписок |
-u, --url |
URL ссылка на подписку или список |
--agg |
Запустить встроенный агрегатор (граббер) прокси |
--agg-cats |
Категории источников для агрегатора (например: 1 2) |
--agg-filter |
Фильтр агрегатора по ключевым словам (например: vless reality) |
-o, --output |
Файл для сохранения рабочих проксей (по дефолту: sortedProxy.txt) |
-T, --threads |
Лимит одновременно запущенных ядер (пачек). |
-t, --timeout |
Таймаут ожидания ответа в секундах (по дефолту: 3) |
-l, --lport |
Стартовый локальный порт для ядер (по дефолту: 1080) |
-c, --core |
Путь к исполняемому файлу ядра (xray/v2ray/mihomo) |
--engine |
Режим выбора ядра: auto / xray / mihomo |
-d, --domain |
Тестовый домен для проверки подключения (по дефолту: Google/CF generate_204) |
--max-ping |
Отсев по ping (мс), 0 = отключить |
-n, --number |
Ограничить количество проверяемых прокси (взять первые N) |
--reuse |
Перепроверить файл результатов (sortedProxy.txt) |
-s, --shuffle |
Перемешать список перед проверкой |
--t2exec |
Время ожидания запуска ядра в секундах |
--t2kill |
Задержка после убийства процесса ядра |
--speed |
Включить тест скорости скачивания (вместо только пинга) |
--sort |
Метод сортировки результатов: ping или speed |
--speed-url |
Ссылка на файл для теста скорости |
--self-test |
Запустить самопроверку URL парсинга (v1.0.3) |
--debug |
Debug режим (1 proxy/batch, 1 thread) (v1.0.3) |
--no-update |
Пропустить проверку самообновления на старте (v1.1.0) |
В планах допилить следующий функционал:
- ВОЗМОЖНО телеграм бот.
Ваш покорный: MKultra69
Веб: mk69.su
FELIX: Оригинал aggregator.py + хороший фидбек
Проект КАК ВСЕГДА распространяется под лицензией WTFPL (Do What The Fuck You Want To Public License).