Я решал задачу разработки продвинутых шаблонов чтобы генерировать редактируемые документы (не отчеты) docx. Так как это должно быть веб-приложением, выбрали сначала PHP. Но стабильно работающих библиотек не нашлось. Нативную автоматизацию Microsoft тоже не хотелось бы применять. Использовал библиотеку DocxTemplate с развитыми возможностями создания шаблонов. Например такого типа
Тут два if'а для генерации двух фрагментов.
В результате админка и фронт был реализован на PHP (Laravel) а сам генератор на python (Flask).
Следуй page object model, IDE советую pycharm. Чего-то глобального посоветовать не могу, из базового - на степике есть хороший курс - https://stepik.org/course/575/promo
Советую пройти.
Конкретно как я делал - для каждой... Читать далее