- Обзор
- Установка на Windows
- Установка на ALT Linux
- Запуск приложения
- Подготовка шаблона
- Использование
- Устранение неполадок
Простое и удобное веб-приложение для автоматической генерации документов на основе шаблона.
- Одиночная генерация — заполните форму и получите готовый документ
- Пакетная генерация — загрузите CSV/XLSX файл и создайте несколько документов за раз
- Интуитивный интерфейс с подсказками и шпаргалками
- Скачайте установщик Python с официального сайта
- Запустите установщик
- Важно: Установите галочку "Add Python to PATH"
- Нажмите "Install Now"
- Проверьте установку:
python --versiongit clone https://github.com/bysnik/document-generator.git
cd document-generatorЕсли Git не установлен, скачайте архив с репозиторием и распакуйте вручную.
python -m venv venv
venv\Scripts\activateПосле активации в командной строке появится префикс (venv).
pip install flask docxtpl python-docx pandas openpyxl# Обновление системы
apt-get update
apt-get dist-upgrade
# Установка Python 3 и необходимых пакетов
apt-get install python3 gitgit clone https://github.com/bysnik/document-generator.git
cd document-generatorpython3 -m venv venv
source venv/bin/activatepip3 install flask docxtpl python-docx pandas openpyxl# Windows (в активированном venv)
python app.py
# ALT Linux (в активированном venv)
python3 app.pyПриложение будет доступно по адресу: http://127.0.0.1:5000
Файл template.docx должен находиться в корневой директории проекта (рядом с app.py).
Имя файла должно быть точно template.docx (без пробелов, скобок, символов +).
На данный момент шаблон представляет собой бессмысленный черновик, его нужно дорабатывать.
- Откройте браузер: http://127.0.0.1:5000
- Выберите "Одиночная генерация"
- Заполните все поля формы
- Нажмите "Сгенерировать документ"
- Файл автоматически скачается
- Откройте браузер: http://127.0.0.1:5000
- Выберите "Пакетная генерация"
- Скачайте пример шаблона (CSV или XLSX)
- Заполните таблицу данными:
- Колонки = поля документа
- Строки = отдельные документы
- Загрузите файл
- Получите ZIP-архив со всеми документами
Причина: Файл шаблона не найден.
Решение:
# Проверьте наличие файла
ls -la template.docx # Linux
dir template.docx # Windows
# Проверьте текущую директорию
pwd # Linux
cd # Windows
# Файл должен быть в той же папке, где запускается app.pyПричина: Не установлены зависимости.
Решение:
pip install flask docxtpl python-docx pandas openpyxl # Windows
pip3 install flask docxtpl python-docx pandas openpyxl # LinuxПричина: Порт 5000 занят другим приложением.
Решение: Измените порт в app.py:
app.run(debug=True, port=5001) # или любой другой свободный портПричина: Неправильная кодировка файла.
Решение: Сохраните файл в кодировке UTF-8:
- В Excel: Файл → Сохранить как → CSV UTF-8
- В LibreOffice: Файл → Экспорт → Кодировка UTF-8
Проверьте:
- Запущено ли приложение (должны быть логи в консоли)
- Правильный ли адрес:
http://127.0.0.1:5000 - Не блокирует ли брандмауэр порт 5000
project/
├── app.py # Основное приложение Flask
├── template.docx # Шаблон документа с плейсхолдерами
├── README.md # Документация
├── .gitignore # Исключения для Git
└── templates/ # HTML-шаблоны
├── index.html
├── single.html
├── batch.html
├── table_format.html
├── error_400.html
├── error_404.html
└── error_500.html




