Introducción a la API de eBay con Python The Trading API - Parte 3

Introducción a la API de eBay con Python The Trading API - Parte 3

Este es el tercer artículo de la serie dedicado a las API de eBay y su uso a través de Python. En el primer artículo, vimos cómo configurar nuestro entorno de trabajo, creando un desarrollador y una cuenta de "prueba" de Sandbox, generando nuestras claves API e instalando el Python SDK.

En el segundo artículo nos acercamos al Encontrar API, centrándose en el finditemsbykeywords llamar. En este artículo presentaremos el API comercial.

En este tutorial aprenderás:

  • ¿Cuáles son algunas de las llamadas más útiles de "API comercial"?
  • Cómo crear un elemento usando el Añadir artículo Llamada de API
Introducción a la API de eBay con Python: The Trading API - Parte 3

Requisitos y convenciones de software utilizados

Requisitos de software y convenciones de línea de comandos de Linux
Categoría Requisitos, convenciones o versión de software utilizada
Sistema Sistema operativo agnóstico.
Software git y python3
Otro Conocimiento del lenguaje de programación de Python y de los conceptos básicos orientados a objetos.
Convenciones # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio
ps - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado

La API comercial



El API comercial es el tema de este tercer artículo de esta serie dedicado a Python y las API de eBay. Esta API específica incluye muchas llamadas muy útiles: al usarlo, podemos, entre otras cosas, crear o terminar elementos y recuperar información sobre categorías, tiendas o vendedores.

Las llamadas de la API comercial

La lista de los disponibles API comercial Las llamadas son demasiado largas para presentarse aquí en su totalidad, sin embargo, aquí presentamos algunos de ellos y el objetivo que podemos lograr con su uso:

  • AddItem: al usar esta llamada, podemos comenzar a vender un artículo tanto con precio fijo como con una subasta
  • AddToWatchList: al usar esta llamada podemos agregar uno o más elementos a nuestra lista de observación
  • Enditem: con esta llamada podemos dejar de vender un artículo antes de la fecha de vencimiento del conjunto
  • GetCategories: use esta llamada para obtener información sobre las categorías de eBay para un sitio específico
  • GetMyebayselling: recupere información sobre nuestra actividad de venta
  • GetStore: recupere información sobre una tienda de eBay específica

La forma en que usamos estas llamadas es la misma que vimos en el artículo anterior: creamos y enviamos una solicitud junto con el nombre de la llamada. Para encontrar la lista completa de las llamadas disponibles, lea el
documentación oficial.



Generando una token

Antes de continuar, asegúrese de haber creado un usuario de "prueba" de sandbox y siguió los pasos incluidos en el primer artículo de esta serie. Dentro de la raíz de nuestro proyecto, utilizamos el eBay.yaml Archivo para almacenar nuestras credenciales para los diversos dominios. Usar el API comercial, e interactuar con el usuario de "prueba" de sandbox, debemos proporcionar nuestro ID de aplicación, ID de desarrollo, ID de certificación y un token que ahora generaremos.

Obtener un token es bastante fácil. Acceda al sitio web del programa de desarrolladores de eBay y navegue a la página de claves de aplicación; aquí, en la sección de sandbox (lado izquierdo), dentro del ID de aplicación campo, haga clic en el Tokens de usuario enlace. Serás redirigido a esta sección:

Iniciar sesión en eBay Sandbox

Haga clic en el botón Azul "Iniciar sesión en Sandbox" y se le enviará a la página de inicio de sesión del sitio de Sandbox. Aquí debe usar el usuario de "prueba" de sandbox que creó anteriormente. Una vez que inicie sesión con éxito, se le solicitará que confirme que desea otorgar acceso a los datos de su cuenta:



Acceso de solicitud de subvención

Haga clic en el botón "Aceptar", y será redirigido a la página de generación de tokens. Aquí verá el nuevo token generado:

Recuperar una nueva token generada por la API eBay

El siguiente paso es copiar el token y las otras credenciales dentro del eBay.yaml Archivo, en la sección correspondiente, al igual que en la imagen a continuación:

eBay.yaml Configuración con token generado recién eBay y otras credenciales

Todo está en su lugar, creemos nuestro artículo!

Creación de un elemento con la llamada API Additem



Dentro de la raíz de nuestro proyecto, creemos un nuevo script y llamemos añadir artículo.py. Dentro de él escribiremos el código necesario para crear nuestro primer elemento. Suponiendo que queremos vender un teclado mecánico, aquí está el código que podríamos escribir:

#!/usr/bin/env python3 de eBaysdk.Conexión de importación de negociación si __name__ == '__main__': api = conexión (config_file = "ebay.yaml ", dominio =" API.salvadera.eBay.com ", debug = true) request = " item ": " título ":" teclado mecánico profesional "," país ":" us "," ubicación ":" it "," sitio ":" us ",", " ConditionID ":" 1000 "," PaymetMethods ":" PayPal "," PayPalemailaddress ":" [email protected] "," primariocategoría ": " categoryId ":" 33963 "," Descripción ":" Un teclado mecánico realmente agradable!"," ListingDuration ":" Days_10 "," StartPrice ":" 150 "," Moneda ":" USD "," returnPolicy ": " returnacceptedOption ":" returnaccepted "," reembolso ":" dinero de dinero "," returnswithinoption " : "Days_30", "Descripción": "Si no está satisfecho, devuelva el teclado."," ShippingCostpaidByOption ":" Comprador "," ShippingDetails ": " shippServiceOptions ": " Freeshipping ":" True "," ShippService ":" UspsMedia "," despacha ":" 3 " API.ejecutar ("addItem", solicitud) 
Copiar

Echemos un vistazo al código anterior. Como lo primero, importamos el Conexión clase de la ebaysdk.comercio módulo. Nosotros la biblioteca necesaria en su lugar, creamos una nueva instancia del Conexión Clase: en su constructor especificamos la ubicación del archivo de configuración, tal como lo hicimos para la API de búsqueda, y también el dominio que se utilizará para la solicitud, que en este caso es API.salvadera.eBay.comunicarse.

Al hacerlo, declaramos que nuestra solicitud
ser enviado al sitio de sandbox: nuestras credenciales se buscarán en el archivo de configuración dependiendo de este dominio. Finalmente, habilitamos el modo de depuración: esto es muy útil al hacer una solicitud compleja, porque se detectarán inmediatamente los posibles errores inmediatamente.

El siguiente paso fue la creación de la solicitud y la descripción de nuestro Artículo en forma de un simple diccionario de Python. Veamos brevemente las diversas propiedades que utilizamos.



Información de ubicación y país

Mediante el uso del Título Opción, especificamos el título de nuestro listado: al vender un artículo en eBay, encontrar un buen título es muy importante. Con País Declaramos el país de la dirección de registro del vendedor: este valor consiste en dos dígitos; Puede consultar esta lista para encontrar todos los valores aplicables posibles.

La siguiente clave que usamos es Ubicación: Esto es necesario para especificar la ubicación geográfica del artículo, en este caso Italia.

Con Sitio, En cambio, especificamos el sitio de eBay en el que debe aparecer el artículo. Este parámetro afecta a otros, como, por ejemplo, los identificadores de las categorías disponibles, ya que la misma categoría puede tener diferentes ID en los diferentes sitios web. Este valor debe ser consistente con el sitio especificado en el constructor del Conexión Clase (el valor predeterminado es "eBay-us").

Declarando las condiciones del artículo

Otra cosa importante para definir es la condición del artículo. Un artículo puede ser nuevo o usado, por ejemplo, y algunos artículos particulares tienen una condición dedicada que se puede usar, dependiendo de su categoría. En este caso usamos "1000" cuál es el código que corresponde al "nuevo" estado. Una tabla de los códigos disponibles se puede encontrar aquí.

Establecer un método de pago

El método de pago que estamos dispuestos a aceptar se puede elegir de la lista de todos los métodos de pago disponibles. En este caso, utilizamos "PayPal", y también proporcionamos la dirección de correo electrónico que se utilizará para el pago, respectivamente utilizando el Métodos de pago y Email de Paypal llaves.



Elegir una categoría para el artículo

El siguiente paso fue definir una categoría para el artículo que estamos vendiendo: lo hicimos usando el Categoría primaria clave, que corresponde a un diccionario en el que el ID de categoría real es identificado por el Categoria ID llave. Cada categoría se identifica mediante una identificación única en el contexto de un sitio específico, pero los identificadores pueden ser diferentes en los varios sitios de eBay. Encontrar la categoría correcta puede ser una tarea tediosa. Para encontrar el apropiado, puede usar llamadas específicas como Categorías de Get GetSugested o puede consultar herramientas en línea como esta.

Otra cosa importante a tener en cuenta es que, al elegir una categoría para un artículo, eBay espera que use uno de los últimos segmentos de un árbol de categoría (una categoría de "hoja"): no puede usar una genérica. En este caso usamos 33963 que corresponde a Teclados y teclados y es uno de los últimos segmentos del Computadoras/tabletas y redes categoría, su ruta completa es computadoras/tabletas y redes> teclados, ratones y punteros> teclados y teclados.

Configuración de la descripción y el precio del artículo

La descripción es otro campo muy importante: esto nos permite describir el elemento con un mayor nivel de detalles. No estamos limitados al texto plano aquí, también podemos usar el código HTML y CSS básico, pero no se nos permite usar contenidos activos, por lo que el uso de JavaScript, por ejemplo, está prohibido. Si el caso queremos proporcionar etiquetas HTML y aprovechar esta función, debemos usar Cdata Sintaxis específica cuando se usa el SDK de Python:

"Descripción": ""

Con Duración de listados Especificamos el intervalo de tiempo que el listado debe permanecer activo. EBay utiliza una lista de tipos de código que se utilizarán en este campo (algunos tipos tienen un uso restringido). En este caso usamos "Days_10" que especifica una duración de 10 días.

El valor que proporcionamos Precio de salida se interpreta de manera diferente dependiendo del tipo de listado: si se trata de una subasta, se considera el precio inicial de la subasta; Si se trata de una lista de precios fijos, en su lugar, se considera el precio constante que el cliente debe pagar para comprar el artículo. Nuestros costos de teclado 150 Unidad de la moneda con la que especificamos Divisa. El valor que se utilizará aquí debe ser elegido de la lista de monedas disponibles.



Establecer una política de devolución

La siguiente sección que definimos fue la Política de devoluciones Sección que describe nuestra política sobre los retornos. Esta sección se define como un diccionario en sí, dentro del cual utilizamos las siguientes claves:

ReturnacceptedOption Define si el vendedor acepta devoluciones o no: los valores aplicables son Se aceptan devoluciones o Devuelve notasceptadas.

Reembolso Define cómo los vendedores reembolsan a los compradores en devoluciones: en todos los mercados de eBay, este valor debe establecerse en Devolución de dinero, mientras que en el mercado estadounidense también se puede establecer en Dinero de dinero.

El Returnswithinoption El parámetro se explica por sí mismo: con este parámetro, especificamos la cantidad de tiempo de entrega, el comprador debe devolver el artículo. La lista de los valores utilizables en esta sección está disponible en esta página. En este caso usamos "Days_30": Se debe utilizar un tiempo de 30 días para calificar como una lista de "mejor calificación".

El Descripción El campo contiene una explicación detallada de la política de devolución del vendedor y se muestra en la sección relativa de la página "Ver artículo". Por lo general, se proporciona un mensaje amigable aquí.

Con el ShippingCostpaidByOption Parámetro Es posible declarar quién, entre el vendedor y el comprador, debe pagar los cargos de envío de devolución; Los valores aceptados son Vendedor o Comprador.

Detalles de envío

Otra sección muy importante para definir es la de la política y los costos de envío: esto se puede hacer utilizando el Shippingingserviceoption llave. Esta clave está asociada con un diccionario en el que podemos definir varios parámetros. En este caso, establecemos una política de envío gratuita, utilizando el Envío gratis clave y proporcionar Verdadero (cadena) como valor, y definimos el servicio de envío con Servicio de envío. Consulte esta lista para obtener una descripción completa de los valores posibles que se utilizarán aquí.

Finalmente, usamos el DispatchTimemax Opción, que básicamente define el número máximo de días hábiles que declara que un vendedor se utilizará para preparar el envío después de recibir un pago.



Enviar nuestra solicitud y verificar el resultado

Preparamos nuestra solicitud y proporcionamos la información necesaria sobre el artículo que queremos vender; Ahora podemos enviar nuestra solicitud usando el ejecutar método, proporcionando, tal como lo hicimos para el Encontrar API, el nombre de la llamada, Añadir artículo Como su primer argumento, y el diccionario de solicitud como el segundo. Si todo va bien después de que se envía la solicitud, el artículo ahora debe estar presente en el sitio de Sandbox. Así es:

Artículo creado usando eBay y Python API

Conclusiones

En este artículo nos acercamos al API comercial. Entre las muchas llamadas disponibles, nos centramos en el Añadir artículo uno. Creamos un elemento que proporciona los campos necesarios para una configuración básica y enviamos nuestra solicitud correctamente a nuestra cuenta de Sandbox. En el próximo artículo de esta serie hablaremos sobre el API de comercialización.

Tabla de contenidos

  • Parte 0

    Introducción

  • Parte I

    Obtener llaves y acceder al sandbox

  • PARTE II

    La api de hallazgo

  • Parte III

    La API comercial

  • Parte IV

    La API de comercialización

Tutoriales de Linux relacionados:

  • Cómo rastrear las llamadas del sistema realizadas por un proceso con Strace On ..
  • Cómo crear un paquete Flatpak
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Cosas para instalar en Ubuntu 20.04
  • Mastering Bash Script Loops
  • Mint 20: Mejor que Ubuntu y Microsoft Windows?
  • Tutorial de depuración de GDB para principiantes
  • Sistema colgado de Linux? Cómo escapar a la línea de comando y ..
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Cómo usar ADB Android Debug Bridge para administrar su Android ..