Skip to main content

Convert between .docx and .md files with template support and advanced document post-processing

Project description

DocxMD Converter

PyPI version Python 3.8+ License: MIT

Мощный Python пакет для конвертации между Microsoft Word (.docx) и Markdown (.md) файлами с поддержкой шаблонов, рекурсивной обработкой директорий и передовой системой пост-обработки документов.

✨ Особенности

🔄 Конвертация

  • Двунаправленная конвертация: .docx.md
  • Поддержка шаблонов: используйте кастомные .docx шаблоны
  • Рекурсивная обработка: конвертируйте целые деревья папок
  • Сохранение структуры: иерархия папок остается неизменной

🧠 Финальная интеграция - Enhanced процессор v2.1.0

  • 🚀 Единая архитектура: объединены все лучшие решения
  • 📋 Интеллектуальное распознавание: автоматическое определение должностных инструкций
  • 🛡️ Безопасная обработка: защита документации от случайных изменений
  • 🎯 Полная структуризация: стандартизированный формат документов
  • ✨ Комплексная очистка: удаление всех артефактов КонсультантПлюс
  • 📊 Расширенные метаданные: качественная оценка обработки

🖥️ Интерфейсы

  • CLI: мощный командный интерфейс
  • GUI: удобное графическое приложение
  • API: программный доступ ко всем функциям

📈 Отчетность и качество

  • Детальные отчеты: статистика обработки и качества
  • Метрики качества: high/medium/low оценки
  • Прогресс: отслеживание выполнения операций

🚀 Быстрый старт

Установка

# Из PyPI (рекомендуемо)
pip install docxmd-converter

# Или локально для разработки
git clone https://github.com/we256681/docxmd_converter.git
cd docxmd_converter && pip install -e .

Важно: Требуется установленный Pandoc.

Установка Pandoc

Ubuntu/Debian:

sudo apt-get install pandoc

macOS:

brew install pandoc

Windows:

choco install pandoc
# или скачайте с pandoc.org

Примеры использования

🎯 Рекомендуемое использование (Enhanced процессор v2.1.0)

# Безопасное тестирование в специальной папке
docxmd --src ./docs/Conversion --dst ./docs/Conversion --format docx2md --processor enhanced --post-process

# Полная конвертация с передовой пост-обработкой
docxmd --src ./documents --dst ./markdown --format docx2md --processor enhanced --post-process

# Принудительная переобработка всех файлов (осторожно!)
docxmd --src ./documents --dst ./markdown --format docx2md --processor enhanced --post-process --force-process

📋 Базовые операции

# Простая конвертация без обработки
docxmd --src ./documents --dst ./markdown --format docx2md

# Обратная конвертация с шаблоном
docxmd --src ./markdown --dst ./documents --format md2docx --template ./template.docx

# Подробный вывод
docxmd --src ./input --dst ./output --format docx2md --verbose

⚙️ Типы пост-процессоров

# Enhanced (рекомендуемый) - полная очистка и структурирование
--processor enhanced

# Advanced - продвинутая обработка
--processor advanced

# Basic - базовая очистка
--processor basic

� Что делает Enhanced процессор

✅ Очистка артефактов

  • Удаляет все следы КонсультантПлюс и других систем
  • Очищает обратные слеши и неправильные переносы
  • Исправляет сломанную пунктуацию и форматирование

🏗️ Структурирование документов

  • Создает единый формат для всех должностных инструкций:
    # Должностная инструкция: Название_должности
    
    ## Информация о документе
    ## 1. Общие положения
    ## 2. Функции
    ## 3. Должностные обязанности
    ## 4. Права
    ## 5. Ответственность
    ## 6. Заключительные положения
    ## 7. Согласование и утверждение
    

🎯 Интеллектуальные возможности

  • Распознавание контента: определяет должностные инструкции по содержимому
  • Пропуск нерелевантных файлов: не обрабатывает документацию и конфигурации
  • Исправление полей: унифицирует поля заполнения в формат `____________________________`
  • Склеивание разбитых строк: восстанавливает целостность текста

🔧 Программное использование

from docxmd_converter import DocxMdConverter
from docxmd_converter.enhanced_processor import EnhancedDocumentProcessor

# Безопасное тестирование
converter = DocxMdConverter()
converter.convert_directory(
    src_dir="./docs/Conversion",
    dst_dir="./docs/Conversion",
    format="docx2md",
    post_process=True,
    processor_type="enhanced"
)

# Продакшн конвертация с полной пост-обработкой
converter.convert_directory(
    src_dir="./documents",
    dst_dir="./markdown",
    format="docx2md",
    post_process=True,
    processor_type="enhanced"
)

# Только пост-обработка существующих файлов
processor = EnhancedDocumentProcessor()
results = processor.process_directory("./docs/Conversion")
print(f"Обработано: {results.processed}/{results.total}")
print(f"Пропущено: {results.skipped}, Ошибок: {results.errors}")
print(f"Качество: {results.quality_stats}")

📋 GUI Приложение

# Запуск графического интерфейса
docxmd-gui

Или программно:

from docxmd_converter.gui import main
main()

🔍 Поиск проблем

Частые проблемы

Pandoc не найден:

# Проверьте установку
pandoc --version

# Ubuntu/Debian
sudo apt-get install pandoc

# Или обновите PATH

Ошибки кодировки:

# Используйте параметр verbose для диагностики
docxmd --src ./input --dst ./output --format docx2md --verbose

Пропускаются файлы:

# Принудительная обработка
docxmd --src ./input --dst ./output --format docx2md --processor enhanced --post-process --force-process

� Связанные документы

🤝 Вклад в проект

  1. Изучите правила документации
  2. Создайте форк проекта
  3. Создайте ветку для изменений
  4. Добавьте тесты для новых функций
  5. Убедитесь, что тесты проходят
  6. Создайте Pull Request

📄 Лицензия

MIT License - подробности в LICENSE.

🚀 Финализация в версии 2.1.0

✅ Завершена полная интеграция

  • Единая архитектура: объединены все лучшие решения из scripts/
  • Enhanced процессор v2.1.0: финальная версия с комплексной обработкой
  • Безопасность: защита документации от случайных изменений
  • Тестирование: папка docs/Conversion/ для безопасных экспериментов
  • Очищенный код: удалена директория scripts/, все интегрировано

🛡️ Безопасная обработка документов

  • Защита системных файлов: автоматический пропуск .py, .json, .yml файлов
  • Защита документации: исключение docs/documentation_management/
  • Интеллектуальный анализ: обработка только должностных инструкций
  • Архивирование: старые скрипты сохранены в archive/scripts_backup/

Статус проекта: ✅ Активная разработка Поддерживаемые версии Python: 3.8+ Платформы: Windows, macOS, Linux

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

docxmd_converter-3.0.0.tar.gz (36.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

docxmd_converter-3.0.0-py3-none-any.whl (33.9 kB view details)

Uploaded Python 3

File details

Details for the file docxmd_converter-3.0.0.tar.gz.

File metadata

  • Download URL: docxmd_converter-3.0.0.tar.gz
  • Upload date:
  • Size: 36.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for docxmd_converter-3.0.0.tar.gz
Algorithm Hash digest
SHA256 c2e040824337d75f8f3e9a1008a451b208a8230dbb5536668a5bf1997d6be1c7
MD5 a42b5bf81ac0f087957ebb024ca6c597
BLAKE2b-256 6195f045da11444a982942dbed4b7e077d1a57923851d221a2311103422b2fba

See more details on using hashes here.

File details

Details for the file docxmd_converter-3.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for docxmd_converter-3.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 977b367e6b2dd53fc4ff075c9d922e1a827f9110bdb52170b01e0d29be9596b2
MD5 4aa63d5ad3071f3647375ce38a4b5bdf
BLAKE2b-256 c82c5041c319c3e7934a0f0fda9c1e8ffb8229bdbe0847e193aa481e086bd0b5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page