Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

AlleWidget, ale gdzie on się podział? Starcie z Allegro webApi - wpis krótki

Jakiś dwa tygodnie temu zadzwonił do mnie mój przyjaciel i z przerażeniem w głosie rzekł, że z jego strony zniknął AlleWidget, który jego zdaniem bardzo pomagał w zwiększaniu sprzedaży. W związku z tym, że nie jest biegły w sprawach informatycznych poprosił mnie abym zbadał ten problem, a że ja kilka lat temu na jego stronie umieściłem owy widget to poczuwałem się do odpowiedzialności aby jemu w tym pomóc. Moje dochodzenie nie trwało zbytnio długo, aby odkryć dlaczego allegrowy gadżet zniknął z powierzchni jego strony.

Na cafe.allegro.pl bardzo szybko uzyskałem odpowiedź, że serwis allewidget.pl został permanentnie wyłączony i nie będzie można już z niego korzystać (dowód tu).

Słysząc taką odpowiedź mój znajomy załamał ręce i zaczął szlochać bełkocząc coś o stratach jakie ma z tego powodu. Nie czekając ani chwili zacząłem szukać nowego LEPSZEGO rozwiązania... no i znalazłem!

W tym momencie niebo się rozjaśniło

Rozwiązanie przyszło od samego Allegro, które udostępnia webApi dzięki, któremu możemy sobie z nim porozmawiać. Wszystko oparte jest o mydlany protokół SOAP (ang. Simple Object Access Protocol), który nieźle się sprawdza na tym poziomie. Cała dokumentacja do owego interfejsu jest napisana na przyzwoitym poziomie (obligującą w przykłady zastosowania opisywanych funkcji), dlatego też mniej zaawansowany koleś (taki jak ja) może sobie bezproblemowo poradzić z wykorzystaniem api do własnych potrzeb.

Wertując kolejne strony siorbnąłem wiedzy dzięki, której mogłem napisać podobny widget na stronę przyjaciela. Jednak zanim zacząłem pisać ten mały skrypcik potrzebowałem zdobyć swój allegrowy klucz developerski. Trwało to zaledwie kilka chwil - musiałem wypełnić formularz składający się zaledwie z dwóch pól, aby po chwili cieszyć się swoim unikalnym kodem przesłanym na maila :)

Przystępując do pisania okazało się że do wykonania mojego małego projektu potrzebuje skorzystać aż z dwóch funkcji:

  • doGetUserId - sprawdzenie identyfikatora użytkownika po podaniu jego nazwy
  • doGetUserItems - pobranie listy ofert (aukcji) wystawionych przez użytkownika
Z tym że użycie funkcji doGetUserId możemy pominąć jeśli znamy identyfikator allegrowicza - a łatwo jest to zrobić. Wystarczy wejść na stronę O mnie danego usera i zaczytać z adresu ostatnie cyferki - tuż po us_id=.

Zaś wracając do metody pobierającej listę przedmiotów użytkownika, wykorzystanie jej jest banalnie proste wystarczy tylko podać kilka parametrów wejściowych, a funkcja zwróci nam wszystkie informacje na temat przedmiotów allegrowicza, o którego pytaliśmy.

Wszystko wygląda mniej-więcej tak: $soap=new SoapClient('http://webapi.allegro.pl/uploader.php?wsdl'); $webapi_key='KLUCZ WEBAPI'; $user_id=$soap->doGetUserId(1,'wojtekadams','',$webapi_key); $items_limit=100; //limit pobranych aukcji $items=$soap->doGetUserItems($user_id,$webapi_key,1,0,$items_limit); for($i=0;$i<$items['user-item-count'];$i++) { echo '<img src='.$items['user-item-list'][$i]->{'it-thumb-url'}.'>'; echo '<a href="http://allegro.pl/show_item.php?item='.$items['user-item-list'][$i]-> {'it-id'}.'">'.$items['user-item-list'][$i]->{'it-name'}.'</a>'; }

I teraz gdy już uzyskaliśmy potrzebne nam informacje to wypadałoby ubrać nasz widget w ładniejsze wdzianko wykorzystując np. jQuery i po chwili mamy taki o to efekt:

Kumpel zadowolony i ja także bo nauczyłem się czegoś nowego :D 

oprogramowanie internet porady

Komentarze

0 nowych
oxide94   3 #1 24.11.2013 16:29

Wpis ok, ale bardzo Cię proszę - przeczytaj tę stronę, a następnie popraw swój wpis, bo to naprawdę razi... :|
http://www.prosteprzecinki.pl/przecinek-przed-ktory

  #2 24.11.2013 17:19

"pernamentnie" :)

Edin   2 #3 24.11.2013 17:31

Zrobiłeś taki mini panel trwających aukcji, ubrał bym go jeszcze w cenę i przycisk kup teraz.

Shaki81 MODERATOR BLOGA  38 #4 24.11.2013 18:54

He he, człowiek całe życie się uczy:)

wojtekadams   18 #5 25.11.2013 09:23

@Edin
Na filmiku pokazane jest że po najechaniu na miniaturę pojawia się tytuł aukcji i jej aktualna cena.
Taką funkcjonalność zażyczył sobie mój znajomy, więc tak zrobiłem.

arlid   14 #6 25.11.2013 18:22

Fajne :) Nigdy się w to nie zagłębiałem. Da się to jakoś "ostylować"?

wojtekadams   18 #7 25.11.2013 18:42

@arlid
wszystko się da :) mój widget miał być maksymalnie prosty

arlid   14 #8 26.11.2013 19:25

@wojtekadams
Można wykorzystać fragmenty kodu? :P Prostota jest piękna xD

wojtekadams   18 #9 27.11.2013 11:59

@arlid
bierz co chcesz ...

Herzy   1 #10 02.11.2014 17:06

@@wojtekadams
Pamiętasz może jakiej galerii użyłeś w filmiku albo masz link do strony gdzie jest to zaimplementowane ?

wojtekadams   18 #11 02.11.2014 18:47

@Herzy: przecież przykładowy kod podałem ;) - tylko musisz go podrasować wedle uznania. Jedynie że chcesz dokładnie to co jest na filmiku to mogę podesłać całość na mail.

Herzy   1 #12 02.11.2014 19:58

@wojtekadams: Mam już zrobione ale nie mogę znaleźć galerii która oferuje takie opcje jak u Ciebie na filmie. Chyba, że sam pisałeś kod do niej. Chętnie zobaczę.
Dzięki :)

Autor edytował komentarz.
Herzy   1 #13 04.11.2014 10:25

@@wojtekadams Ponawiam prośbę bo może mail nie doszedł (jeśli nie miałeś czasu to przepraszam za spam)

wojtekadams   18 #14 04.11.2014 12:32

@Herzy: zapomniałem... dzisiaj wyślę Tobie cały kod

  #15 10.11.2014 15:33

Witam,
a jest jakaś możliwość kategoryzowania wyświetlonych przedmiotów, z tym że akurat przedmioty należą do jednej kataegrii na allegro

  #16 17.02.2015 15:45

Witam
Mógłbym też poprosić o cały kod widgeta ? na e-mail : cezary.wysocki@onet.pl

  #17 19.06.2015 19:53

Trochę odświeżę kotleta ze względu na to ,że szukam informacji o webapi :)
doGetUserItems - znika z webApi dnia 25.06 i skrypt znowu przestanie działać :D ahhh to nasze Allegro.

wojtekadams   18 #18 21.06.2015 13:40

@Anonim (niezalogowany): No tak - trzeba będzie co nieco poprawić :)

  #19 10.07.2015 22:28

Kurcze, macie już jakieś rozwiązanie na te wprowadzone zmiany przez allegro, ten kod był super, dostosowałem go sobie w miarę możliwośći, było fajnie a teraz kicha :(
Jest jakaś funkcja doGetItemsList ale nie wiem jak ją ujarzmić by działało to tak jak wcześniej

  #20 27.02.2016 17:13

Posiadam wtyczkę dla WordPress i moduł dla Joomla 2.5, 3.x także generator aukcji dla allegro. Jeśli jest ktoś zainteresowany, zapraszam do kontaktu.
grojanteam.pl albo na e-mail l[dot]grochal[at]grojanteam[dot]pl

wojtekadams   18 #21 29.02.2016 08:33

@GrojanTeam (niezalogowany): dobry kawał roboty

grojanteam   1 #22 29.02.2016 19:13

@wojtekadams: dziękuje bardzo, mam nadzieje że posłuży wam trochę