Задача

Необходимо создать полностью рабочий скрипт на Python с использованием библиотеки Playwright, который автоматизирует процесс публикации множества электронных книг на одном сайте. Скрипт должен работать автономно, минуя ручное заполнение формы, используя файлы из локальных папок и метаданные из JSON-файла.

Общий алгоритм работы

  • Однократный вход в аккаунт и сохранение сессии для всех последующих действий.
  • Парсинг папки «BOOKS» (файлы .docx).
  • Для каждой книги создается новая вкладка.
  • Заполнение формы и загрузка файлов / изображений.
  • После заполнения вкладка с заказами не закрывается.
  • Обработка ошибок: сохранение скриншота и HTML-кода страницы в лог.

Источники данных

  • Книги: папка с готовыми файлами .docx.
  • Аннотации: файл metadata.json следующего формата: ключ = имя файла книги (без расширения), значение = текст аннотации.
  • Обложки: папка «covers». Изображения должны соответствовать имени книги.

Требования к заполнению формы

  • Название книги = имя файла.
  • Поля: автор, аннотация берутся из metadata.json.
  • Выбор 3 жанров из выпадающего меню подготовлено на основе библиотеки гугл-меню (учтено).
  • Добавление 5 тегов (список задан строго в коде скрипта стандартно для всех книг).
  • Установка возрастной метки 12+.
  • Выбор лицензии «Эксклюзивная».
  • Загрузка обложки из папки «covers» в соответствующее поле формы.