Introduction à l'API eBay avec Python L'API trading - Partie 3
- 1938
- 41
- Victor Charpentier
Ceci est le troisième article de la série dédié aux API eBay et leur utilisation via Python. Dans le premier article, nous avons vu comment configurer notre environnement de travail, créer un développeur et un compte de bac à sable, générer nos clés d'API et installer le SDK Python.
Dans le deuxième article, nous avons approché le Trouver une API
, se concentrer sur le FindItemsByKeywords
appel. Dans cet article, nous présenterons le API trading
.
Dans ce tutoriel, vous apprendrez:
- Quels sont les appels les plus utiles «API de trading»
- Comment créer un élément en utilisant le
Ajouter un item
Appel de l'API
Exigences et conventions logicielles utilisées
Catégorie | Exigences, conventions ou version logicielle utilisée |
---|---|
Système | Système d'exploitation agnostique. |
Logiciel | git et python3 |
Autre | Connaissance du langage de programmation Python et des concepts de base orientés objet. |
Conventions | # - Exige que les commandes Linux soient exécutées avec des privilèges racine soit directement en tant qu'utilisateur racine, soit par l'utilisation de Sudo commande$ - Exige que les commandes Linux soient exécutées en tant qu'utilisateur non privilégié régulier |
L'API commerciale
Le API trading
Est le sujet de ce troisième article de cette série dédié à Python et aux API eBay. Cette API spécifique comprend de nombreux appels très utiles: en l'utilisant, nous pouvons, entre autres, créer ou terminer des éléments et récupérer des informations sur les catégories, les magasins ou les vendeurs.
L'API commerciale appelle
La liste des disponibles API trading
Les appels sont trop longs pour être présentés ici dans son intégralité, cependant, ici nous présentons certains d'entre eux et l'objectif que nous pouvons atteindre avec leur utilisation:
- Additem - En utilisant cet appel, nous pouvons commencer à vendre un article à un prix fixe ou à une vente aux enchères
- AddtowatchList - En utilisant cet appel, nous pouvons ajouter un ou plusieurs éléments à notre liste de surveillance
- EndItem - Avec cet appel, nous pouvons arrêter de vendre un article avant la date d'expiration définie
- GetCategories - Utilisez cet appel pour obtenir des informations sur les catégories d'eBay pour un site spécifique
- GetMyeBaySelling - Récupérez des informations sur notre activité de vente
- GetStore - Récupérez des informations sur une boutique eBay spécifique
La façon dont nous utilisons ces appels est la même que nous avons vue dans l'article précédent: nous créons et envoyons une demande avec le nom d'appel. Pour trouver la liste complète des appels disponibles, veuillez lire le
documentation officielle.
Générer un jeton
Avant de poursuivre, assurez-vous d'avoir créé un utilisateur de sandbox «test» et suivi les étapes incluses dans le premier article de cette série. À l'intérieur de la racine de notre projet, nous avons utilisé le eBay.yaml
dossier pour stocker nos informations d'identification pour les différents domaines. Pour utiliser le API trading
, et interagir avec l'utilisateur «test» de bac à sable, nous devons fournir notre Identifiant d'application
, Id de développement
, Cert ID
Et un jeton que nous générerons maintenant.
Obtenir un jeton est assez facile. Accéder au site Web du programme des développeurs eBay et accéder à la page des clés d'application; Ici, dans la section de bac à sable (côté gauche), à l'intérieur du Identifiant d'application
champ, cliquez sur le Jetons utilisateur
lien. Vous serez redirigé vers cette section:
Cliquez sur le bouton bleu «Connectez-vous à Sandbox» et vous serez envoyé à la page de connexion du site de bac à sable. Ici, vous devez utiliser l'utilisateur de sandbox «test» que vous avez créé précédemment. Une fois que vous vous êtes connecté avec succès, vous vous invitez à confirmer que vous souhaitez accorder l'accès aux données de votre compte:
Accès à la demande d'octroi
Cliquez sur le bouton «Accepter» et vous serez redirigé vers la page de génération de jeton. Ici, vous verrez le nouveau jeton généré:
Récupérer un nouveau jeton généré par Ebay APIL'étape suivante consiste à copier le jeton et les autres références à l'intérieur du eBay.yaml
Fichier, dans la section correspondante, tout comme dans l'image ci-dessous:
eBay.yaml
Configuration avec un jeton généré de nouveau et d'autres informations d'identification Tout est en place, créons notre article!
Création d'un élément avec l'appel API Additem
À l'intérieur de la racine de notre projet, créons un nouveau script et appelons-le ajouter un item.py
. À l'intérieur, nous écrivons le code nécessaire pour créer notre premier élément. En supposant que nous voulons vendre un clavier mécanique, voici le code que nous pourrions écrire:
#!/ usr / bin / env python3 d'Ebaysdk.Trading Import Connection Si __Name__ == '__Main__': API = Connexion (config_file = "eBay.yaml ", domaine =" api.bac à sable.eBay.com ", debug = true) request = " item ": " Title ":" Professional Mechanical Keyboard "," country ":" us "," emplacement ":" it "," site ":" us "," ConditionId ":" 1000 "," PaymentMethods ":" Paypal "," PayPaleMailaddress ":" Personne @ gmail.com "," primairecategory ": " catégorieid ":" 33963 "," Description ":" Un très beau clavier mécanique!"," ListingDuration ":" Days_10 "," startPrice ":" 150 "," Currency ":" USD "," returnPolicy ": " RetourdsacceptedOption ":" RetourdsAcepted "," Remise ":" Moneyback "," RetourSwithInoption " : "Days_30", "Description": "Si vous n'êtes pas satisfait, retournez le clavier."," ShippingCostPaidByoption ":" Buyer "," ShippingDetails ": " ShippingServiceOptions ": " Freessipping ":" True "," ShippingService ":" UspsMedia "," DispatchtimeMax ":" 3 " API.exécuter ("addition", demande)
Copie Jetons un coup d'œil au code ci-dessus. En première chose, nous avons importé le Connexion
classe du eBaysdk.commerce
module. Nous la bibliothèque nécessaire en place, nous avons créé une nouvelle instance du Connexion
Classe: Dans son constructeur, nous avons spécifié l'emplacement du fichier de configuration, tout comme nous l'avons fait pour l'API de recherche, ainsi que le domaine à utiliser pour la demande, qui dans ce cas est API.bac à sable.eBay.com
.
Ce faisant, nous avons déclaré que notre demande
être envoyé sur le site de bac à sable: nos informations d'identification seront recherchées dans le fichier de configuration en fonction de ce domaine. Enfin, nous avons activé le mode de débogage: ceci est très utile lors d'une demande complexe, car les erreurs possibles seront immédiatement détectées.
L'étape suivante a été la création de la demande et la description de notre Article
sous la forme d'un simple dictionnaire python. Voyons brièvement les différentes propriétés que nous avons utilisées.
Informations sur l'emplacement et le pays
En utilisant le Titre
Option Nous avons spécifié le titre de notre liste: lors de la vente d'un article sur eBay, trouver un bon titre est très important. Avec Pays
Nous avons déclaré le pays de l'adresse d'enregistrement du vendeur: Cette valeur se compose de deux chiffres; Vous pouvez consulter cette liste pour trouver toutes les valeurs applicables possibles.
La touche suivante que nous avons utilisée est Emplacement
: Ceci est nécessaire pour spécifier l'emplacement géographique de l'article, dans ce cas Italie.
Avec Placer
, Au lieu de cela, nous avons spécifié le site eBay dans lequel l'élément doit apparaître. Ce paramètre affecte d'autres, comme, par exemple, les identificateurs des catégories disponibles, car la même catégorie peut avoir des ID différents sur les différents sites Web. Cette valeur doit être cohérente avec le site spécifié dans le constructeur du Connexion
classe (la valeur par défaut est «ebay-us»).
Déclarer les conditions de l'article
Une autre chose importante à définir est la condition de l'article. Un article peut être nouveau ou utilisé par exemple, et certains articles particuliers ont une condition dédiée qui peut être utilisée, selon leur catégorie. Dans ce cas, nous avons utilisé "1000"
qui est le code qui correspond au statut «nouveau». Un tableau des codes disponibles peut être trouvé ici.
Définir un mode de paiement
Le mode de paiement que nous sommes prêts à accepter peut être choisi dans la liste de toutes les méthodes de paiement disponibles. Dans ce cas, nous avons utilisé «PayPal», et nous avons également fourni l'adresse e-mail à utiliser pour le paiement, respectivement en utilisant le Méthodes de payement
et Adresse e-mail Paypal
clés.
Choisir une catégorie pour l'article
L'étape suivante consistait à définir une catégorie pour l'article que nous vendons: nous l'avons fait en utilisant le Catégorie primaire
clé, qui correspond à un dictionnaire dans lequel l'ID de catégorie réel est identifié par le Catégorie
clé. Chaque catégorie est identifiée par un ID unique dans le contexte d'un site spécifique, mais les identifiants peuvent être différents sur les plusieurs sites eBay. Trouver la bonne catégorie peut être une tâche fastidieuse. Pour trouver celui approprié, vous pouvez utiliser des appels spécifiques comme Obtient des catégories
ou vous pouvez consulter des outils en ligne comme celui-ci.
Une autre chose importante à remarquer est que, lors du choix d'une catégorie pour un article, eBay s'attend à ce que vous utilisiez l'un des derniers segments d'un arbre de catégorie (une catégorie «feuille»): vous ne pouvez pas en utiliser un générique. Dans ce cas, nous avons utilisé 33963
qui correspond à Claviers et claviers
et est l'un des derniers segments du Ordinateurs / tablettes et réseautage
catégorie, son chemin complet étant les ordinateurs / tablettes et réseautage> clavier, souris et pointeurs> claviers et claviers.
Définition de la description et du prix de l'article
La description est un autre domaine très important: cela nous permet de décrire l'élément avec un niveau de détails plus élevé. Nous ne nous limitons pas au texte brut ici, nous pouvons également utiliser le code HTML et CSS de base, mais nous ne sommes pas autorisés à utiliser un contenu actif, de sorte que l'utilisation de JavaScript, par exemple, est interdite. Si le cas nous voulons fournir des balises HTML et profiter de cette fonctionnalité, nous devons utiliser Cdata
Syntaxe spécifique lors de l'utilisation du SDK Python:
"Description": ""
Avec Annonce
Nous avons spécifié l'intervalle de temps où la liste doit rester active. EBay utilise une liste de types de code à utiliser dans ce domaine (certains types ont une utilisation restreinte). Dans ce cas, nous avons utilisé "Days_10"
qui spécifient une durée de 10 jours.
La valeur que nous fournissons Start
est interprété différemment en fonction du type de liste: s'il s'agit d'une vente aux enchères, cela est considéré comme le prix de départ de l'enchère; S'il s'agit d'une liste à prix fixe, il est plutôt considéré comme le prix constant que le client doit payer pour acheter l'article. Notre clavier coûte 150
unité de la devise avec laquelle nous avons spécifié Monnaie
. La valeur à utiliser ici doit être choisie à partir de la liste des devises disponibles.
Établir une politique de retour
La section suivante que nous avons définie était le Politique de retour
Section qui décrit notre politique sur les retours. Cette section est définie comme un dictionnaire lui-même, à l'intérieur de laquelle nous avons utilisé les clés suivantes:
Retour à l'OPCGe
définit si le vendeur accepte les rendements ou non: les valeurs applicables sont Retours acceptés
ou Retourne
.
Remboursement
Définit comment les vendeurs remboursent les acheteurs sur les retours: sur tous les marchés eBay, cette valeur doit être réglée pour Rétrofacturé
, Pendant que sur le marché américain, il peut également être réglé pour MoneybackorReplacement
.
Le Retourwithinoption
Le paramètre est assez explicite: avec ce paramètre, nous spécifions la durée de la livraison de la livraison, l'acheteur doit renvoyer l'article. La liste des valeurs utilisables dans cette section est disponible sur cette page. Dans ce cas, nous avons utilisé "Days_30"
: un temps de 30 jours doit être utilisé pour être considéré comme une liste «la mieux notée».
Le Description
Le champ contient une explication détaillée de la politique de retour du vendeur et de son affichage dans la section relative de la page «Afficher l'élément». Un message amical est généralement fourni ici.
Avec le ShippingCostPaidByoption
Paramètre Il est possible de déclarer qui, entre le vendeur et l'acheteur, devrait payer les frais d'expédition de retour; Les valeurs acceptées sont Vendeur
ou Acheteur
.
Les détails d'expédition
Une autre section très importante à définir est celle de la politique d'expédition et des coûts: cela peut être fait en utilisant le ShippingServiceOption
clé. Cette clé est associée à un dictionnaire dans lequel nous pouvons définir divers paramètres. Dans ce cas, nous définissons une politique de livraison gratuite, en utilisant le Livraison gratuite
clé et fournir Vrai
(String) comme valeur, et nous avons défini le service d'expédition avec Service de livraison
. Consultez cette liste pour un aperçu complet des valeurs possibles à utiliser ici.
Enfin, nous avons utilisé le DispatchtimeMax
L'option, qui définit essentiellement le nombre maximum de jours ouvrables qu'un vendeur déclare sera utilisé pour préparer l'expédition après avoir reçu un paiement.
Envoi de notre demande et vérifiez le résultat
Nous avons préparé notre demande et fourni les informations nécessaires sur l'article que nous souhaitons vendre; Nous pouvons maintenant envoyer notre demande en utilisant le exécuter
Méthode, fournissant, tout comme nous l'avons fait pour le Trouver une API
, le nom de l'appel, Ajouter un item
comme son premier argument, et le dictionnaire de demande comme le second. Si tout se passe bien après l'envoi de la demande, l'élément doit être maintenant présent sur le site de bac à sable. Donc c'est:
Conclusions
Dans cet article, nous avons approché le API trading
. Parmi les nombreux appels disponibles, nous nous sommes concentrés sur le Ajouter un item
un. Nous avons créé un élément fournissant les champs nécessaires pour une configuration de base et envoyé notre demande avec succès à notre compte Sandbox. Dans le prochain article de cette série, nous parlerons du API de marchandisage
.
Table des matières
- Partie 0
Introduction
- Partie I
Obtenir des clés et accéder au bac à sable
- DEUXIEME PARTIE
L'API de découverte
- Partie III
L'API commerciale
- Partie IV
L'API de merchandising
Tutoriels Linux connexes:
- Comment tracer les appels du système effectués par un processus avec Strace sur…
- Comment créer un package Flatpak
- Une introduction à l'automatisation Linux, des outils et des techniques
- Choses à installer sur Ubuntu 20.04
- Masterring Bash Script Loops
- Mint 20: Mieux que Ubuntu et Microsoft Windows?
- Tutoriel de débogage GDB pour les débutants
- Système linux hung? Comment s'échapper vers la ligne de commande et…
- Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
- Comment utiliser ADB Android Debug Bridge pour gérer votre Android…
- « Introduction à l'API eBay avec Python L'API Merchandising - Partie 4
- Introduction aux API eBay avec Python »