Текущая версия: 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 Пароли сгенерированы успешно!