Potrzebne jest opracowanie parsera do zbierania produktów z witryny producenta https://come-for.com/ua/, który zbiera produkty z internetowego sklepu i eksportuje je do Google Sheets w określonej strukturze, aby menedżer treści mógł dalej pracować z tymi danymi bez ręcznego kopiowania produktów z witryny i następnie importować te produkty do naszego sklepu internetowego stworzonego na CMS-ie Khoroshop.
Co należy parsować:
- Nazwa produktu
- Marka
- Kategoria na stronie producenta
- Typ produktu, jeśli można go określić
- Link do produktu
- Numer katalogowy lub kod produktu, jeśli jest na stronie
- Cena
- Waluta
- Dostępność, jeśli jest na stronie
- Główne zdjęcie produktu
- Galeria zdjęć produktu
- Opis produktu
- Krótki opis, jeśli jest
- Specyfikacje produktu
- Rozmiary, modyfikacje, warianty, jeśli są
- Dane dotyczące wysokości, twardości, wypełnienia, materiałów, obciążenia i innych parametrów, jeśli są w karcie produktu
- Dane SEO, jeśli są w kodzie lub na stronie
- Data parsowania
- Status przetwarzania produktu
Eksport do Google Sheets:
Dane należy zapisywać w arkuszu Google według gotowej struktury, którą przekażemy wykonawcy.
W tabeli już znajduje się duża liczba kolumn dla produktów, w tym:
numer katalogowy, numer katalogowy rodzica, nazwa produktu, nazwa modyfikacji, marka, dział, cena, stara cena, waluta, wyświetlanie, dostępność, zdjęcie, galeria, link, data dodania, HTML title, META keywords, META description, H1, dostawca, opis produktu, krótki opis, opis dla marketplace'ów, specyfikacje, rozmiary, status AI, data generacji AI, błąd AI oraz inne pola.
Nie wszystkie pola muszą być wypełnione na pierwszym etapie. Głównym zadaniem wykonawcy jest poprawne zebranie dostępnych danych z witryny producenta i umieszczenie ich w odpowiednich kolumnach tabeli.
Ważne:
Parser nie ma bezpośrednio dodawać produktów na stronę, a jedynie zbierać dane z witryny producenta i eksportować je do Google Sheets.
Dalsza edycja produktów, dostosowanie kategorii, przeredagowanie opisów, przetwarzanie AI i import do Khoroshop będą wykonywane oddzielnie, najprawdopodobniej przez menedżera treści.
Logika działania parsera:
- Uruchomienie parsera ręcznie lub za pomocą prostego polecenia
- Parser przechodzi na wskazaną stronę
- Zbiera listę produktów
- Przechodzi do każdej karty produktu
- Zbiera wszystkie dostępne dane
- Formuje poprawną strukturę danych
- Zapisuje wynik w Google Sheets
- Nie duplikuje produktów przy ponownym uruchomieniu
- Ma możliwość aktualizacji istniejących produktów według linku lub numeru katalogowego
- Ma rejestrować błędy, jeśli nie udało się przetworzyć danego produktu
Pożądana logika aktualizacji:
Trzeba przewidzieć dwa tryby:
- Pełne parsowanie
Zebrać wszystkie produkty z witryny i zapisać je w tabeli. - Aktualizacja istniejących produktów
Przy ponownym uruchomieniu parser musi sprawdzić, czy produkt już znajduje się w tabeli. Jeśli produkt istnieje, należy zaktualizować tylko zmienne pola: cena, dostępność, zdjęcie, specyfikacje lub inne dane, które się zmieniły.
Jeśli produkt jest nowy, należy dodać go jako nowy wiersz.
Kategorie:
Na stronie producenta kategorie mogą różnić się od kategorii naszej witryny. Na przykład, producent może mieć kategorie „topper”, „futon”, „cienki materac”, a na naszej stronie może to być jedna kategoria „Cienkie materace”.
Na pierwszym etapie należy eksportować kategorię tak, jak jest podana na stronie producenta.
Pożądane jest również dodanie osobnej kolumny dla przyszłej kategorii naszej witryny, ale może ją wypełniać menedżer treści ręcznie.
Zdjęcia:
Należy zebrać:
- Główne zdjęcie produktu
- Wszystkie zdjęcia z galerii
- Linki do zdjęć w osobnych kolumnach lub w jednym polu przez separator
- Pożądane jest przewidzenie możliwości w przyszłości przesyłania zdjęć na Google Drive lub inne magazyny, ale na pierwszym etapie wystarczą linki do zdjęć, jeśli są stabilne
Specyfikacje:
Jeśli na stronie specyfikacje są wyświetlane w tabeli lub blokach, należy je zachować w maksymalnie zorganizowanej formie.
Pożądane jest wdrożenie jednej z opcji:
- Osobne kolumny pod kluczowe specyfikacje
- Ogólna kolumna „Specyfikacje” w formacie parametr: wartość
- Opcja mieszana, jeśli jest to technicznie uzasadnione
Należy zachować specyfikacje w taki sposób, aby można je było później dostosować do struktury Khoroshop.
Wymagania techniczne:
- Parser musi być stabilny i nadający się do ponownego użycia
- Kod musi być zrozumiały i zorganizowany
- Trzeba przekazać kod źródłowy po zakończeniu pracy
- Trzeba dostarczyć krótką instrukcję do uruchomienia
- Trzeba opisać, jakie zależności należy zainstalować
- Trzeba przewidzieć logowanie błędów
- Trzeba uwzględnić możliwe ograniczenia witryny, paginację, lazy-load, dynamiczne ładowanie zdjęć lub specyfikacji
- Rozwiązanie musi poprawnie działać z Google Sheets API
- Autoryzacja do Google Sheets musi być realizowana w sposób bezpieczny
- Pożądane jest, aby narzędzie mogło być uruchamiane lokalnie lub na serwerze
Możliwy stack:
Stack można zaproponować wykonawcy. Jeśli można przez N8N (na naszym serwerze już jest), to idealnie.
Albo nada się Python, Node.js lub inne niezawodne rozwiązanie.
Pożądane opcje:
Python + requests / BeautifulSoup / Selenium / Playwright + Google Sheets API
lub
Node.js + Puppeteer / Playwright + Google Sheets API
Ostateczny stack można uzgodnić z wykonawcą, jeśli wyjaśni, dlaczego jego opcja jest lepsza do tego zadania.
Co należy uzyskać w wyniku:
- Działający parser dla witryny (przekażemy wykonawcy URL). Na razie robimy dla jednej konkretnej witryny.
- Automatyczny eksport produktów do Google Sheets
- Poprawne wypełnienie głównych kolumn tabeli
- Ochrona przed duplikowaniem produktów
- Możliwość ponownego uruchomienia
- Log błędów lub osobny arkusz w Google Sheets ze statusami przetwarzania
- Krótką instrukcję do uruchomienia
- Przekazanie kodu źródłowego
- Komentarze w kodzie lub krótkie techniczne wyjaśnienie logiki
- Rekomendacje wykonawcy dotyczące skalowania pod inne witryny
Kryteria akceptacji pracy:
Praca uznawana jest za wykonaną, jeśli:
- Parser pomyślnie zbiera produkty z witryny konkurenta, którą przekażemy wykonawcy.
- Do tabeli trafiają nazwy, ceny, zdjęcia, linki, kategorie, opisy i specyfikacje produktów
- Dane są zapisywane w odpowiednich kolumnach Google Sheets
- Przy ponownym uruchomieniu produkty nie są duplikowane
- Nowe produkty są dodawane jako osobne wiersze
- Istniejące produkty mogą być aktualizowane
- Jest zrozumiała instrukcja, jak uruchomić parser
- Jest kod źródłowy
- Jest wyjaśnienie, co robić, jeśli witryna zmieni strukturę
- Wykonawca pokazał testowy wynik na rzeczywistych produktach
Ważne jest, aby od razu przemyśleć architekturę rozwiązania nie tylko dla jednorazowego skryptu, ale jako narzędzie, które można będzie dostosować do innych witryn i skalować.
W przyszłości mogą być potrzebne takie funkcje:
- Parsowanie innych producentów
- Regularna aktualizacja cen
- Monitorowanie nowych produktów
- Monitorowanie zmian asortymentu
- Porównywanie cen
- Automatyczne uruchamianie według harmonogramu
- Przetwarzanie opisów AI
- Przygotowanie pliku do importu do Khoroshop
Wymagania wobec wykonawcy:
Szukamy specjalisty, który ma realne doświadczenie w:
- Parsowaniu sklepów internetowych lub witryn producentów
- Pracy z Google Sheets API
- Przetwarzaniu katalogów produktów
- Pracy ze zdjęciami, specyfikacjami, cenami i modyfikacjami produktów
- Tworzeniu stabilnych parserów, które można uruchamiać wielokrotnie
- Konfigurowaniu logowania i przetwarzania błędów
Będzie to atut, jeśli masz już doświadczenie z produktami dla e-commerce, meblami, materacami, Khoroshop lub przygotowaniem plików produktowych.
Co należy napisać w odpowiedzi na zadanie:
Proszę, w odpowiedzi od razu podaj:
- Jaki stack proponujesz do realizacji
- Czy miałeś doświadczenie w parsowaniu sklepów internetowych
- Czy pracowałeś z Google Sheets API
- Jak planujesz unikać duplikowania produktów
- Jak będziesz przetwarzać zdjęcia i galerie
- Jak będziesz rejestrować błędy
- Ile czasu potrzebujesz na pierwszą wersję roboczą
- Jaka jest orientacyjna cena realizacji
- Czy będziesz mógł później dostosować rozwiązanie do innych witryn
- Przykłady podobnych prac, jeśli są
Struktura pliku Google Sheets, do którego należy parsować produkty, znajduje się tutaj - https://docs.google.com/spreadsheets/d/1NaEaFHfMIVW_YUg7JOYbm4SuMcIcxd7xIdkaZZ-UHZg/edit?gid=2050477948#gid=2050477948
Witryna producenta Come-For - https://come-for.com/ua/
Początkowo należy przeprowadzić test na kilku produktach. Po sprawdzeniu struktury i jakości danych można uruchomić pełne parsowanie wszystkich produktów.
Oczekiwany wynik:
Potrzebny jest nie tylko jednorazowy skrypt, ale jakościowe wewnętrzne narzędzie do automatyzacji zbierania produktów z witryny producenta do Google Sheets, które później będzie można wykorzystać do przygotowania produktów do importu na stronę.