Самая сложная система парсинга реализована в pipeline производства сайтов на Elementor.
Она работает сразу с несколькими источниками:
JSON-шаблоны Elementor;
ZIP-архивы Envato;
ответы Gemini;
промежуточные файлы генерации.
Парсинг Elementor JSON
Elementor хранит страницы в виде глубоко вложенного JSON-дерева.
Я реализовал рекурсивный обход этой структуры:
Elementor JSON
→ обход dict и list
→ поиск виджетов
→ анализ settings
→ поиск текстовых полей
→ фильтрация технических значений
→ присвоение ID node_N
→ формирование словаря текстов
Парсер поддерживает:
стандартные виджеты Elementor;
JegKit;
ElementsKit;
вложенные элементы;
repeater-поля;
HTML-тексты;
заголовки;
описания;
кнопки;
отзывы;
accordion;
tabs;
countdown;
другие текстовые поля.
Используется набор из десятков целевых ключей, по которым система определяет пользовательский текст.
Интеграция с Gemini
Извлечённые тексты отправляются в Gemini.
После генерации система:
получает сырой ответ;
удаляет markdown-обёртки;
извлекает JSON;
проверяет структуру;
сопоставляет ответы по node_N;
повторно обходит Elementor JSON;
возвращает каждый текст в исходный элемент;
сохраняет новый валидный JSON.
Полный цикл:
Elementor JSON
→ извлечение текстов
→ Gemini
→ парсинг ответа AI
→ проверка JSON
→ обратная подстановка
→ новый Elementor JSON
Парсинг Envato ZIP
Для подготовки шаблонов я также реализовал обработку архивов Envato:
Envato ZIP
→ распаковка
→ обход файлов
→ поиск Elementor JSON
→ проверка структуры
→ подсчёт текстовых элементов
→ отбор пригодных шаблонов
→ перенос в golden templates
Дополнительная проверка
После основной генерации шаблон проходит несколько этапов:
поиск подозрительных текстов;
повторная AI-генерация;
поиск Lorem Ipsum;
отдельная перезапись Lorem;
очистка оставшихся исходных строк;
замена изображений;
подготовка JSON к публикации.
В результате шаблон Envato автоматически превращается в готовую Elementor-страницу с новым контентом.
Она работает сразу с несколькими источниками:
JSON-шаблоны Elementor;
ZIP-архивы Envato;
ответы Gemini;
промежуточные файлы генерации.
Парсинг Elementor JSON
Elementor хранит страницы в виде глубоко вложенного JSON-дерева.
Я реализовал рекурсивный обход этой структуры:
Elementor JSON
→ обход dict и list
→ поиск виджетов
→ анализ settings
→ поиск текстовых полей
→ фильтрация технических значений
→ присвоение ID node_N
→ формирование словаря текстов
Парсер поддерживает:
стандартные виджеты Elementor;
JegKit;
ElementsKit;
вложенные элементы;
repeater-поля;
HTML-тексты;
заголовки;
описания;
кнопки;
отзывы;
accordion;
tabs;
countdown;
другие текстовые поля.
Используется набор из десятков целевых ключей, по которым система определяет пользовательский текст.
Интеграция с Gemini
Извлечённые тексты отправляются в Gemini.
После генерации система:
получает сырой ответ;
удаляет markdown-обёртки;
извлекает JSON;
проверяет структуру;
сопоставляет ответы по node_N;
повторно обходит Elementor JSON;
возвращает каждый текст в исходный элемент;
сохраняет новый валидный JSON.
Полный цикл:
Elementor JSON
→ извлечение текстов
→ Gemini
→ парсинг ответа AI
→ проверка JSON
→ обратная подстановка
→ новый Elementor JSON
Парсинг Envato ZIP
Для подготовки шаблонов я также реализовал обработку архивов Envato:
Envato ZIP
→ распаковка
→ обход файлов
→ поиск Elementor JSON
→ проверка структуры
→ подсчёт текстовых элементов
→ отбор пригодных шаблонов
→ перенос в golden templates
Дополнительная проверка
После основной генерации шаблон проходит несколько этапов:
поиск подозрительных текстов;
повторная AI-генерация;
поиск Lorem Ipsum;
отдельная перезапись Lorem;
очистка оставшихся исходных строк;
замена изображений;
подготовка JSON к публикации.
В результате шаблон Envato автоматически превращается в готовую Elementor-страницу с новым контентом.