Текущая версия: 1.1.0
Простая веб-программа для генерации безопасных паролей с различными настройками. Генерирует пароли заданной длины, с возможностью включения заглавных букв, цифр и специальных символов.
- Бэкенд: Python, Flask
- Генерация паролей: Модули
random
иstring
из стандартной библиотеки Python. - Фронтенд: HTML, CSS, JavaScript (использует Fetch API для взаимодействия с бэкендом).
-
Создан password_generator.py (бэкенд) с основной логикой генерации паролей.
-
Создан app.py с использованием Flask, который будет управлять всем:
- Отдавать index.html пользователю.
- Принимать запросы от index.html (длина, типы символов).
- Вызывать функции из password_generator.py.
- Возвращать сгенерированный пароль обратно в index.html.
Перед запуском: Убедитесь, что у вас установлен Flask. Если нет, выполните:
pip install Flask
-
Обновлен index.html (фронтенд). Изменен JavaScript так, чтобы он отправлял запрос на наш Flask-сервер.
- Добавлено поле errorMessageDiv для отображения ошибок от сервера.
- Функция generatePassword теперь использует fetch API для отправки POST-запроса на /generate_password.
- Данные отправляются в формате JSON.
- Обрабатывается ответ сервера: если есть ошибка, она показывается пользователю, иначе — отображается пароль.
- Немного улучшен CSS для лучшего отображения настроек.
- Скачайте и сохраните архив с программой и запустите файл
index.html
. - Теперь вы можете открыть этот файл в браузере, чтобы увидеть работающий генератор паролей.
Важные замечания для app.py:
Папка templates: Flask по умолчанию ищет HTML-файлы в подпапке templates. Вам нужно будет создать эту папку и переместить туда ваш index.html. Скрипт app.py пытается сделать это автоматически при первом запуске, но лучше сделать вручную, чтобы избежать ошибок.
pip install Flask
: Убедитесь, что Flask установлен.
version: Наш password_generator.py должен содержать переменную version = "1.1.0".
- Сохраните password_generator.py и app.py в одной директории.
- Создайте папку templates в этой же директории.
- Переместите ваш index.html внутрь папки templates.
- Откройте терминал в этой директории.
- Запустите сервер: python app.py
- Откройте браузер и перейдите по адресу http://127.0.0.1:5000/ (или http://localhost:5000/). Теперь ваш index.html должен работать интерактивно, общаясь с Python-скриптом через Flask!
Убедитесь, что ваши файлы расположены следующим образом:
ваш_проект/
├── password_generator.py
├── app.py
└── templates/
└── index.html
ваш_проект/
- это корневая директория вашего проекта.password_generator.py
иapp.py
лежат прямо в корне.- Создайте папку
templates
в корне. - Переместите ваш
index.html
внутрь этой папкиtemplates/
.
- Установка Flask (если еще не установлено):
Откройте терминал (командную строку) и выполните команду:
pip install Flask
Если у вас установлен Python, то pip
должен быть доступен. Если возникнут ошибки, возможно, Python или pip установлены некорректно, или пути к ним не прописаны в переменной среды PATH.
- Запуск сервера:
-
Откройте терминал:
- Windows: Найдите "Командная строка" (Command Prompt) или "PowerShell".
- macOS/Linux: Откройте стандартное приложение "Терминал".
-
Перейдите в директорию вашего проекта: Используйте команду
cd
(change directory). Например, если ваш проект находится на рабочем столе в папкеpassword-generator
:cd Desktop/password-generator
(Путь может отличаться в зависимости от того, где вы сохранили проект).
-
Запустите Python-скрипт
app.py
: Убедитесь, что вы находитесь в той же директории, где лежатapp.py
и папкаtemplates
. Теперь введите команду:python app.py
- Важно: Если у вас на компьютере установлено несколько версий Python, и по умолчанию запускается не та, к которой привязан
pip
, то может потребоваться использоватьpython3 app.py
илиpy app.py
(на Windows). Проще всего использоватьpython
илиpython3
, если вы уверены, что они указывают на нужную версию.
- Важно: Если у вас на компьютере установлено несколько версий Python, и по умолчанию запускается не та, к которой привязан
Что должно произойти после запуска:
Вы увидите сообщения в терминале, похожие на эти:
- Serving Flask app 'app' (lazy loading)
- Environment: production WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
- Debug mode: on
- Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
- Running on http://127.0.0.1:5000/
Файл index.html перемещен в папку 'templates'.
- Открытие в браузере:
- Возьмите одну из ссылок, которые появились в терминале, обычно это:
http://127.0.0.1:5000/
(илиhttp://localhost:5000/
) - Откройте ваш веб-браузер (Chrome, Firefox, Safari, Edge и т.д.).
- Вставьте эту ссылку в адресную строку браузера и нажмите Enter.
Вы должны увидеть ваш генератор паролей, который теперь будет работать, обращаясь к Python-бэкенду!
Если что-то пошло не так:
- "ModuleNotFoundError: No module named 'Flask'": Значит, Flask не установлен. Попробуйте
pip install Flask
еще раз. - "ModuleNotFoundError: No module named 'password_generator'": Значит,
app.py
не может найти ваш файлpassword_generator.py
. Убедитесь, что они лежат в одной директории, и вы запускаетеapp.py
из этой директории. - "FileNotFoundError: [Errno 2] No such file or directory: 'templates/index.html'": Значит,
index.html
не находится в папкеtemplates/
. Проверьте структуру папок. - Ошибки в браузере: Если браузер выдает ошибки, проверьте консоль ошибок в браузере (обычно открывается через F12) и сообщения в терминале, где запущен
app.py
. Там может быть более подробная информация.
Использует строчные буквы. Введите длину пароля (от 8 и более). Использовать цифры? Использовать ЗАГЛАВНЫЕ буквы? Использовать спецсимволы?
Варианты паролей: Вариант пароля номер 1: OMm7TTc$BO Вариант пароля номер 2: 84WbkB@N8g Пароли сгенерированы успешно!