Wprowadzenie do API eBay z Pythonem API handlu - część 3
- 598
- 177
- Tomasz Szatkowski
To trzeci artykuł z serii poświęcony interfejsach API eBay i ich użycie przez Python. W pierwszym artykule widzieliśmy, jak skonfigurować nasze środowisko pracy, tworzyć programistę i konto „testuj” piaskownicę, generując nasze klucze API i instalowanie Python SDK.
W drugim artykule zbliżyliśmy się do Znalezienie API
, koncentrując się na FindEmsBykeywords
dzwonić. W tym artykule wprowadzimy API handlu
.
W tym samouczku nauczysz się:
- Jakie są jedne z najbardziej przydatnych wywołań „handlu API”
- Jak utworzyć element za pomocą
Dodaj Przedmiot
Wezwanie API
Zastosowane wymagania i konwencje oprogramowania
Kategoria | Wymagania, konwencje lub wersja oprogramowania |
---|---|
System | System operacyjny agnostyk. |
Oprogramowanie | Git i Python3 |
Inny | Znajomość języka programowania Pythona i podstawowych pojęć zorientowanych na obiekt. |
Konwencje | # - Wymaga, aby podane polecenia Linux są wykonywane z uprawnieniami root bezpośrednio jako użytkownik root lub za pomocą sudo Komenda$ - Wymaga, aby podane polecenia Linux zostały wykonane jako zwykły użytkownik niepewny |
API handlowe
API handlu
jest przedmiotem tego trzeciego artykułu z tej serii poświęconej Pythonowi i API eBay. Ten konkretny interfejs API zawiera wiele bardzo przydatnych połączeń: korzystając z niego, możemy między innymi tworzyć lub kończyć informacje o kategoriach, sklepach lub sprzedawcach.
API handlowe wywołuje
Lista dostępnych API handlu
Wezwania są zbyt długie, aby je tutaj przedstawić w całości, jednak tutaj przedstawiamy niektóre z nich i cel, jaki możemy osiągnąć dzięki ich użyciu:
- Dodatek - korzystając z tego połączenia, możemy zacząć sprzedawać przedmiot zarówno ze stałą ceną, jak i na aukcji
- AddTowatchList - korzystając z tego połączenia, możemy dodać jeden lub więcej elementów do naszej listy obserwacyjnej
- Enditem - dzięki tej rozmowie możemy przestać sprzedawać artykuł przed datą wygaśnięcia zestawu
- GetCategories - Użyj tego połączenia, aby uzyskać informacje o kategoriach eBay dla określonej witryny
- GetMyeBayselling - odzyskaj informacje o naszej działalności sprzedaży
- GetStore - Odzyskaj informacje o określonym sklepie eBay
Sposób, w jaki korzystamy z tych połączeń, jest taki sam, jak widzieliśmy w poprzednim artykule: Tworzymy i wysyłamy żądanie razem z nazwą połączenia. Aby znaleźć pełną listę dostępnych połączeń, przeczytaj
Oficjalna dokumentacja.
Generowanie tokenu
Przed kontynuowaniem upewnij się, że utworzyłeś użytkownika „testuj” piaskownicy i wykonałeś kroki zawarte w pierwszym artykule z tej serii. W korzeni naszego projektu użyliśmy eBay.Yaml
Plik do przechowywania naszych poświadczeń dla różnych domen. Użyć API handlu
, i wchodzić w interakcje z użytkownikiem „testuj” piaskownicy, musimy zapewnić nasz Identyfikator aplikacji
, Dev Id
, Cert ID
i token, który teraz wygenerujemy.
Uzyskanie tokena jest dość łatwe. Uzyskaj dostęp do strony programu programistów eBay i przejdź do strony kluczy aplikacji; tutaj, w sekcji piaskownicy (lewa strona), wewnątrz Identyfikator aplikacji
pole, kliknij Tokeny użytkownika
połączyć. Zostaniesz przekierowany do tej sekcji:
Kliknij przycisk „Zaloguj się do Sandbox”, a zostaniesz wysłany na stronę logowania witryny Sandbox. Tutaj musisz użyć utworzonego wcześniej użytkownika piaskownicy „Test”. Po pomyślnym zalogowaniu się, poprosisz o potwierdzenie, że chcesz przyznać dostęp do danych konta:
Dostęp do wniosku o przyznanie
Kliknij przycisk „Zgadzam się”, a zostaniesz przekierowany z powrotem na stronę generowania tokenów. Tutaj zobaczysz nowy generowany token:
Odzyskać nowy token generowany przez API eBayNastępnym krokiem jest skopiowanie tokena i innych poświadczeń wewnątrz eBay.Yaml
Plik w odpowiedniej sekcji, tak jak na poniższym zdjęciu:
eBay.Yaml
Konfiguracja z nowo wygenerowanym tokenem eBay i innymi poświadczeniami Wszystko jest na miejscu, utwórzmy nasz przedmiot!
Tworzenie elementu za pomocą połączenia API Additem
W korzeni naszego projektu stwórzmy nowy skrypt i nazwijmy go Dodaj Przedmiot.py
. W środku napiszemy kod potrzebny do utworzenia naszego pierwszego elementu. Przypuśćmy, że chcemy sprzedać mechaniczną klawiaturę, oto kod, który możemy napisać:
#!/usr/bin/env python3 z eBaysdk.Trading Import Connection Jeśli __name__ == '__main__': API = Connection (config_file = "eBay.yaml ", domain =" API.Sandbox.eBay.com ", debug = true) request = " item ": " title ":„ Professional mechaniczna klawiatura ”,„ kraj ”:„ us ”,„ lokalizacja ”:„ it ”,„ strona ”:„ nas ”," CONDYID „:„ 1000 ”,„ PaymentMethods ”:„ PayPal ”,„ PayPalemailaddress ”:„ [email protected] ",„ PrimaryCategory ”: „ CateoryID ”:„ 33963 ”,„ Opis ”:„ Naprawdę fajna mechaniczna klawiatura!„,„ ListingDuration ”:„ dni_10 ”,„ startPrice ”:„ 150 ”,„ waluta ”:„ USD ”,„ returnPolicy ”: „ returnSacceptedOption ”:„ returnSaccepted ”,„ Zwrot ”:„ Moneyback ”,„ Returnswithinoption ” : „Days_30”, „Opis”: „Jeśli nie jesteś zadowolony, zwróć klawiaturę.„,„ WhiptingCostPaidByOption ”:„ kupujący ”,„ wysyłkaDetails ”: „ shippingServiceOptions ”: „ freeshipping ”:„ true ”,„ shippingservice ”:„ USPSMedia ”,„ DispatchTimEMax ”:„ 3 ” api.Execute („AddItem”, żądanie)
Kopiuj Spójrzmy na powyższy kod. Jako pierwszą rzeczą importowaliśmy Połączenie
klasa z EBAYDK.handlowy
moduł. My potrzebna biblioteka na miejscu, stworzyliśmy nową instancję Połączenie
Klasa: W jego konstruktorze określliśmy lokalizację pliku konfiguracyjnego, tak jak zrobiliśmy to dla API znalezienia, a także domenę do użycia dla żądania, które w tym przypadku jest API.Sandbox.eBay.com
.
Tak samo zadeklarowaliśmy, że nasza prośba będzie
zostaną wysłane na stronę Sandbox: Nasze poświadczenia zostaną przeszukane w pliku konfiguracyjnym w zależności od tej domeny. Wreszcie, włączyliśmy tryb debugowania: jest to bardzo przydatne podczas wykonania złożonego żądania, ponieważ możliwe błędy zostaną natychmiast wykryte.
Następnym krokiem było utworzenie żądania i opis naszego Przedmiot
w postaci prostego słownika Pythona. Zobaczmy krótko różne właściwości, których użyliśmy.
Informacje o lokalizacji i kraju
Za pomocą Tytuł
Opcja określiliśmy tytuł naszej listy: Sprzedając przedmiot w serwisie eBay znalezienie dobrego tytułu jest bardzo ważne. Z Kraj
Oświadczyliśmy kraj adresu rejestracyjnego Sprzedawcy: ta wartość składa się w dwóch cyfrach; Możesz zapoznać się z tą listą, aby znaleźć wszystkie możliwe obowiązujące wartości.
Następnym kluczem, którego użyliśmy Lokalizacja
: Jest to potrzebne do określenia geograficznej lokalizacji elementu, w tym przypadku Włochów.
Z Strona
, Zamiast tego określiliśmy witrynę eBay, w której element powinien się pojawić. Ten parametr wpływa na inne, na przykład identyfikatory dostępnych kategorii, ponieważ ta sama kategoria może mieć różne identyfikatory na różnych stronach internetowych. Ta wartość musi być spójna z witryną określoną w konstruktorze Połączenie
klasa (domyślnie to „eBay-us”).
Zadeklarowanie warunków przedmiotu
Kolejną ważną rzeczą do zdefiniowania jest stan artykułu. Na przykład artykuł może być nowy lub użyty, a niektóre szczególne artykuły mają dedykowany stan, w zależności od kategorii. W tym przypadku użyliśmy „1000”
który jest kodem, który odpowiada statusowi „nowego”. Tabela dostępnych kodów można znaleźć tutaj.
Ustawienie metody płatności
Metoda płatności, którą jesteśmy gotowi zaakceptować, może zostać wybrana z listy wszystkich dostępnych metod płatności. W takim przypadku użyliśmy „PayPal”, a także dostarczyliśmy adres e -mail, który ma być używany odpowiednio do płatności, korzystając z Metody Płatności
I Adres email w PayPal
Klucze.
Wybór kategorii dla przedmiotu
Następnym krokiem było zdefiniowanie kategorii dla przedmiotu, który sprzedajemy: zrobiliśmy to za pomocą PrimaryCategory
klucz, który odpowiada słownikowi, w którym faktyczny identyfikator kategorii jest identyfikowany przez KategoriaID
klucz. Każda kategoria jest identyfikowana przez unikalny identyfikator w kontekście określonej witryny, ale identyfikatory mogą być różne na kilku stronach eBay. Znalezienie właściwej kategorii może być żmudnym zadaniem. Aby znaleźć odpowiedni, możesz użyć określonych połączeń, takich jak GetSUggestEdcategories
Lub możesz zapoznać się z takimi narzędziami online.
Kolejną ważną rzeczą do zauważenia jest to, że przy wyborze kategorii dla przedmiotu, eBay oczekuje, że użyjesz jednego z ostatnich segmentów drzewa kategorii (kategoria „Leaf”): nie możesz użyć ogólnego. W tym przypadku użyliśmy 33963
co odpowiada Klawiatury i klawiatury
i jest jednym z ostatnich segmentów Komputery/tablety i sieć
Kategoria, pełna ścieżka to komputery/tablety i sieci> Klawiatury, myszy i wskaźniki> Klawiki i klawiatury.
Ustawienie opisu i ceny elementu
Opis jest kolejnym bardzo ważnym polem: pozwala nam opisać przedmiot o wyższym poziomie szczegółów. Nie jesteśmy tutaj ograniczeni do zwykłego tekstu, możemy również użyć podstawowego kodu HTML i CSS, ale nie wolno nam używać aktywnej zawartości, więc na przykład użycie JavaScript jest zabronione. Jeśli przypadek chcemy podać tagi HTML i skorzystać z tej funkcji, musimy użyć Cdata
specyficzna składnia podczas korzystania z Python SDK:
"Opis": ""
Z ListingDuration
Określiliśmy interwał czasu, w którym lista powinna pozostać aktywna. EBay używa listy typów kodów do użycia w tym polu (niektóre typy mają ograniczone zastosowanie). W tym przypadku użyliśmy „Days_10”
które określają czas trwania 10 dni.
Wartość, którą zapewniamy Początek
jest interpretowany inaczej w zależności od rodzaju listy: jeśli jest to aukcja, jest to uważane za cenę początkową aukcji; Jeśli jest to aukcja o stałej cenie, zamiast tego jest uważana za stałą cenę, którą klient musi zapłacić za zakup przedmiotu. Nasze koszty klawiatury 150
jednostka waluty, którą określliśmy Waluta
. Wartość, którą należy tutaj użyć, musi być wybrana z listy dostępnych walut.
Ustanowienie polityki zwrotu
Następna sekcja, którą zdefiniowaliśmy, to ReturnPolicy
Sekcja opisująca nasze zasady dotyczące zwrotów. Ta sekcja jest zdefiniowana jako sam słownik, w którym użyliśmy następujących kluczy:
Powracający Prace
określa, czy sprzedawca akceptuje zwroty, czy nie: odpowiednie wartości są Zwrot zaakceptowany
Lub Returnsnotakted
.
Zwrot pieniędzy
określa, w jaki sposób sprzedawcy zwraca kupującym na zwroty: na wszystkich rynkach eBay należy ustalić wartość ta Zwrot pieniędzy
, na rynku amerykańskim można go również ustawić Moneybackorreplacement
.
Returnswithinoption
Parametr jest dość samodzielny: z tym parametrem określamy czas od dostarczenia, który kupujący musi zwrócić element. Lista wartości użytecznych w tej sekcji jest dostępna na tej stronie. W tym przypadku użyliśmy „Days_30”
: Musi być wykorzystywany do kwalifikacji jako lista „najwyżej oceniana”.
Opis
Pole zawiera szczegółowe wyjaśnienie zasady zwrotu sprzedawcy i jego wyświetlane w sekcji względnej strony „Wyświetl pozycję”. Tutaj zwykle dostarczana jest przyjazna wiadomość.
Z ShippingCostPaidByoption
Parametr można zadeklarować, kto między sprzedawcą a kupującym powinien zapłacić opłaty za wysyłkę zwrotną; Zaakceptowane wartości to Sprzedawca
Lub Kupujący
.
Szczegóły dostawy
Kolejną bardzo ważną sekcją do zdefiniowania jest ta o polityce wysyłki i kosztach: można to zrobić za pomocą korzystania z ShippingServiceOption
klucz. Klucz ten jest powiązany ze słownikiem, w którym możemy zdefiniować różne parametry. W takim przypadku ustalamy zasady bezpłatnej wysyłki, korzystając z Darmowa dostawa
klucz i dostarczanie PRAWDA
(ciąg) jako wartość i zdefiniowaliśmy usługę wysyłki za pomocą Usługa przewozowa
. Zapoznaj się z tą listą, aby uzyskać pełny przegląd możliwych wartości, które należy użyć tutaj.
Wreszcie użyliśmy DispatchTimeMax
Opcja, która zasadniczo określa maksymalną liczbę dni roboczych, które sprzedawca deklaruje, zostanie wykorzystany do przygotowania wysyłki po otrzymaniu płatności.
Wysyłanie naszego żądania i weryfikuj wynik
Przygotowaliśmy naszą prośbę i dostarczyliśmy potrzebne informacje na temat przedmiotu, który chcemy sprzedać; Teraz możemy wysłać nasze żądanie za pomocą wykonać
metoda, pod warunkiem, że tak, tak jak dla Znalezienie API
, Nazwa połączenia, Dodaj Przedmiot
jako pierwszy argument i słownik żądania jako drugi. Jeśli wszystko pójdzie dobrze po wysłaniu żądania, element powinien być teraz obecny na stronie piaskownicy. Więc to jest:
Wnioski
W tym artykule zbliżyliśmy się do API handlu
. Spośród wielu dostępnych połączeń skupiliśmy się na Dodaj Przedmiot
jeden. Utworzyliśmy element dostarczający niezbędne pola dla podstawowej konfiguracji i pomyślnie wysłaliśmy nasze żądanie na nasze konto Sandbox. W następnym artykule z tej serii porozmawiamy o Merchandising API
.
Spis treści
- Część 0
Wstęp
- Część I
Uzyskanie kluczy i dostęp do piaskownicy
- CZĘŚĆ DRUGA
API znalezienia
- Część III
API handlowe
- Część IV
Merchandising API
Powiązane samouczki Linux:
- Jak śledzić połączenia systemowe wykonane przez proces z Strace na…
- Jak utworzyć pakiet FlatPak
- Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
- Rzeczy do zainstalowania na Ubuntu 20.04
- Mastering Bash Script Loops
- Mint 20: Lepsze niż Ubuntu i Microsoft Windows?
- Samouczek debugowania GDB dla początkujących
- Hung Linux System? Jak uciec do wiersza poleceń i…
- Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
- Jak korzystać z ADB Android Debug Bridge do zarządzania Androidem…
- « Wprowadzenie do API eBay z Pythonem Merchandising API - Część 4
- Wprowadzenie do API eBay z Pythonem »