Allegro Seller Info 0.1.7

tech • 253 słowa • 2 minuty czytania

Dzisiaj zauważyłem, że mój allegrowy skrypt użytkownika nie wyświetla lokalizacji sprzedającego na stronach aukcji. To może oznaczać, że coś zmieniono w serwisie i wymagana jest aktualizacja kodu. I tym samym wyszła nowa wersja - 0.1.7.

Po szybkim spojrzeniu do “środka” strony okazało się, że obiekty w głównej przestrzeni nazw zaczynające się od prefiksu __PROPS__ALLEGRO_ nie są już dostępne w aktualnej wersji serwisu. To na nich bazowało wykrywanie stron oferty:

// strona z opisem aukcji
if (window.__PROPS__ALLEGRO_SHOWOFFER_SUMMARY__ || window.__PROPS__ALLEGRO_SHOWOFFER_DESCRIPTION__) { }

Na szybko ustaliłem, że pobierany w dalszej części kodu “uchwyt” do elementu na podstawie którego ustalam pozycję do wstrzyknięcia danych jest dostępny tylko na stronach ofert, więc równie dobrze może być wykorzystany w tej roli:

// strona z opisem aukcji
const offers = document.querySelector('div[itemprop="offers"]');
if (offers) { }

Po tej małej poprawce skrypt ruszył i można byłoby uznać za gotowe. Ale przez ostatni czas nagłówki aukcji uległy małym zmianom i uznałem, że aktualnie lepszym miejscem na wyświetlenie lokalizacji jest miejsce, gdzie wyszczególniono informacje o dostawie. Zmiany wyglądu dla przykładowej aukcji przedstawia poniższy zrzut ekranu.

W kodzie była to drobna zmiana, bo zamiast dodawać do elementu poprzedzającego pierwszy div z obramowaniem, dodaję do jego środka jako pierwsze dziecko. Trochę to uprościło kod, bo nie trzeba już upewniać się że są wolne komórki/wiersze w “tabelkowym” dizajnie etc… wystarczy po prostu wrzucić i “floatnąć” w prawo.

Szczegóły zmian do podejrzenia w repo UserScripts w tym komicie. Tam również można znaleźć aktualną wersję skryptu. Systemy z auto-aktualizacją same powinny się zająć kwestią podbicia skryptu do najnowszej wersji.

Komentarze (0)

Dodaj komentarz

/dozwolony markdown/

/nie zostanie opublikowany/