Najbardziej skomplikowany system parsowania został zrealizowany w pipeline produkcji stron na Elementorze.
Działa on jednocześnie z kilkoma źródłami:
szablony JSON Elementora;
archiwa ZIP Envato;
odpowiedzi Gemini;
pliki pośrednie generacji.
Parsowanie JSON Elementora
Elementor przechowuje strony w postaci głęboko zagnieżdżonego drzewa JSON.
Zrealizowałem rekurencyjne przeszukiwanie tej struktury:
JSON Elementora
→ przeszukiwanie dict i list
→ wyszukiwanie widgetów
→ analiza ustawień
→ wyszukiwanie pól tekstowych
→ filtrowanie wartości technicznych
→ przypisanie ID node_N
→ tworzenie słownika tekstów
Parser obsługuje:
standardowe widgety Elementora;
JegKit;
ElementsKit;
elementy zagnieżdżone;
pola repeater;
teksty HTML;
nagłówki;
opisy;
przyciski;
opinie;
akordeon;
zakładki;
odliczanie;
inne pola tekstowe.
Wykorzystywany jest zestaw z dziesiątek kluczowych słów, na podstawie których system określa tekst użytkownika.
Integracja z Gemini
Wyciągnięte teksty są wysyłane do Gemini.
Po generacji system:
otrzymuje surową odpowiedź;
usuwa opakowania markdown;
wyciąga JSON;
sprawdza strukturę;
mapuje odpowiedzi według node_N;
ponownie przeszukuje JSON Elementora;
zwraca każdy tekst do pierwotnego elementu;
zapisuje nowy, ważny JSON.
Pełny cykl:
JSON Elementora
→ wyciąganie tekstów
→ Gemini
→ parsowanie odpowiedzi AI
→ sprawdzanie JSON
→ odwrotne podstawienie
→ nowy JSON Elementora
Parsowanie Envato ZIP
Aby przygotować szablony, zrealizowałem również przetwarzanie archiwów Envato:
Envato ZIP
→ rozpakowywanie
→ przeszukiwanie plików
→ wyszukiwanie JSON Elementora
→ sprawdzanie struktury
→ liczenie elementów tekstowych
→ wybór odpowiednich szablonów
→ przeniesienie do złotych szablonów
Dodatkowa weryfikacja
Po głównej generacji szablon przechodzi kilka etapów:
wyszukiwanie podejrzanych tekstów;
ponowna generacja AI;
wyszukiwanie Lorem Ipsum;
oddzielne przepisanie Lorem;
czyszczenie pozostałych oryginalnych linii;
zamiana obrazów;
przygotowanie JSON do publikacji.
W rezultacie szablon Envato automatycznie przekształca się w gotową stronę Elementor z nową treścią.
Działa on jednocześnie z kilkoma źródłami:
szablony JSON Elementora;
archiwa ZIP Envato;
odpowiedzi Gemini;
pliki pośrednie generacji.
Parsowanie JSON Elementora
Elementor przechowuje strony w postaci głęboko zagnieżdżonego drzewa JSON.
Zrealizowałem rekurencyjne przeszukiwanie tej struktury:
JSON Elementora
→ przeszukiwanie dict i list
→ wyszukiwanie widgetów
→ analiza ustawień
→ wyszukiwanie pól tekstowych
→ filtrowanie wartości technicznych
→ przypisanie ID node_N
→ tworzenie słownika tekstów
Parser obsługuje:
standardowe widgety Elementora;
JegKit;
ElementsKit;
elementy zagnieżdżone;
pola repeater;
teksty HTML;
nagłówki;
opisy;
przyciski;
opinie;
akordeon;
zakładki;
odliczanie;
inne pola tekstowe.
Wykorzystywany jest zestaw z dziesiątek kluczowych słów, na podstawie których system określa tekst użytkownika.
Integracja z Gemini
Wyciągnięte teksty są wysyłane do Gemini.
Po generacji system:
otrzymuje surową odpowiedź;
usuwa opakowania markdown;
wyciąga JSON;
sprawdza strukturę;
mapuje odpowiedzi według node_N;
ponownie przeszukuje JSON Elementora;
zwraca każdy tekst do pierwotnego elementu;
zapisuje nowy, ważny JSON.
Pełny cykl:
JSON Elementora
→ wyciąganie tekstów
→ Gemini
→ parsowanie odpowiedzi AI
→ sprawdzanie JSON
→ odwrotne podstawienie
→ nowy JSON Elementora
Parsowanie Envato ZIP
Aby przygotować szablony, zrealizowałem również przetwarzanie archiwów Envato:
Envato ZIP
→ rozpakowywanie
→ przeszukiwanie plików
→ wyszukiwanie JSON Elementora
→ sprawdzanie struktury
→ liczenie elementów tekstowych
→ wybór odpowiednich szablonów
→ przeniesienie do złotych szablonów
Dodatkowa weryfikacja
Po głównej generacji szablon przechodzi kilka etapów:
wyszukiwanie podejrzanych tekstów;
ponowna generacja AI;
wyszukiwanie Lorem Ipsum;
oddzielne przepisanie Lorem;
czyszczenie pozostałych oryginalnych linii;
zamiana obrazów;
przygotowanie JSON do publikacji.
W rezultacie szablon Envato automatycznie przekształca się w gotową stronę Elementor z nową treścią.