Инструмент для проверки доступности юзернеймов на Fragment.com с уведомлениями в Telegram.
- Проверка наличия свободных юзернеймов на Fragment
- Отправка уведомлений в Telegram
- Защита от блокировки с различными механизмами безопасности:
- Ротация User-Agent
- Адаптивная задержка между запросами
- Обработка ошибок с повторными попытками
- Сохранение и возобновление прогресса
- Поддержка проверки как одиночных юзернеймов, так и списков из файла
git clone https://github.com/LavrCode/fragment-checker.git
cd fragment-checker
pip install -r requirements.txt
- requests
- beautifulsoup4
- aiogram (v3+)
- fake-useragent
python fragment_checker.py -u username
python fragment_checker.py -f usernames.txt
python fragment_checker.py -f usernames.txt -t "YOUR_TELEGRAM_BOT_TOKEN" -c "YOUR_CHAT_ID"
python fragment_checker.py -f large_list.txt -d 2.5 -D 5.0 -s progress.json -b 5
Аргумент | Описание |
---|---|
-u , --username |
Проверить один юзернейм |
-f , --file |
Путь к файлу со списком юзернеймов (по одному на строку) |
-t , --token |
Токен Telegram бота |
-c , --chat |
ID чата Telegram для отправки сообщений |
-d , --delay |
Минимальная задержка между запросами в секундах (по умолчанию 1.0) |
-D , --max-delay |
Максимальная задержка между запросами в секундах |
-s , --state |
Путь к файлу для сохранения/загрузки прогресса |
-b , --batch |
Размер пакета для сохранения прогресса (по умолчанию 10) |
Скрипт использует несколько механизмов для предотвращения блокировки со стороны Fragment:
-
Ротация User-Agent:
- Поддерживает пул из 10 различных User-Agent
- Периодически обновляет User-Agent для имитации разных браузеров
-
Адаптивные задержки:
- Случайные задержки между запросами в указанном диапазоне
- Автоматическое увеличение задержки после ошибок
- Специальная обработка ответов с кодом 429 (Too Many Requests)
-
Повторные попытки:
- Экспоненциальная задержка между повторными попытками
- Обработка сетевых ошибок и временных сбоев
Для каждого юзернейма скрипт определяет один из следующих статусов:
- unavailable - юзернейм свободен (доступен для регистрации)
- available - юзернейм недоступен
- taken - юзернейм уже занят
- unknown - статус не удалось определить
- error - произошла ошибка при проверке
username1
username2
username3
MIT License
Разработано с ❤️ LavrCode
Если у вас возникли вопросы или предложения, создайте issue в репозитории проекта.