Генератор ссылок с настройками подборки символов
Задача
Необходимо создать скрипт, который автоматически генерирует ссылки с изменяемыми значениями в конце пути (например: zyWOPZLj, t1jDKSP2, u5krbqu6tgk). Вставляемый пользователем сайт является началом URL, а остальная часть генерируется по правилам, задаваемым в настройках.
Основные требования
- Простой интерфейс - кнопки для генерации, запуска, остановки, а также поля для ввода сайта и параметров.
- Настройка символов - возможность задать длину генерируемого значения (например, 8 или 11 символов), а также тип разрешенных символов: только цифры, без больших букв, с большими буквами, с цифрами, только маленькие латинские и т.д.
- Контроль генерации - в интерфейсе присутствует выбор целевого состояния страницы (например, 'все' или 'только 404').
- Прокси - поддержка работы через прокси-сервер (настройка в интерфейсе).
Детали работы
Скрипт должен, зная начальный адрес (любой сайт вводит пользователь), идти по сгенерированным ссылкам последовательно. Для каждой ссылки требуется сформировать запрос (GET), получить ответ сервера и отобразить результат в интерфейсе (успешно, ошибка, код 404 и т.п.). Необходима возможность остановить процесс в любой момент.
Интерфейс
- Поле для URL сайта (всегда обязательное).
- Поле для выбора типа символов:
- только цифры
- цифры и маленькие латинские
- все символы (большие, маленькие, цифры)
- кастомный список символов
- Поле для указания длины генерируемого набора (8, 11, другое).
- Чекбокс/поле для ответа сервера: #404, любая ошибка, все коды, только 2xx и т.п.
- Поле для прокси (опционально, формат IP:Port:User:Password или просто IP:Port).
- Кнопки: старт, стоп, пауза, очистить лог.
- Окно с данными: список сcылок, их статус, время отклика, результат (200, 404…).
Что не требуется
- Красивый дизайн, много кнопок, пояснений внутри скрипта.
- Хранение истории, БД.
- Двусмысленные проверки - какая ссылка вообще (только путь).
- Сбор аналитики. При аргументе 'количество до 8-ми символов' - отклонить.
Вводные параметры и формат
За минуту до объяснений: заказ предлагал описание, скорее всего предполагающее, что символы для перестановок вложены прямо в код, но интерфейс даст настраивать пользователю: ввел шаблон u5krbqu6tgk - программа подставила, пошла на перебор: u5krbqu6tg1, u5krbqu6tg0, u4*** и т.д. Доп. поле: при вводе сайта начального - строго начиная с https:// или http://. За проектом оплачивает часы(?).
Ожидаемый результат
- Одно приложение без дополнительных модулей (максимум requests, tkinter / PyQt / либо консоль с ncurse). Поскольку простой скрипт из 30 минут, то подходит чистый Python.
- Готовый выполняемый скрипт (обязательно в кодировке UTF-8) + возможно краткая инструкция txt в одну строчку.
- Интерфейс: локальное взаимодействие с мышкой/клавиатурой (без Flask и html)