2008-09-07 17 views
42

¿Qué bibliotecas de Python usan las personas para consultar los datos de los productos de Amazon? (Servicio web de Amazon Associates: solía llamarse API de comercio electrónico, o algo parecido).Biblioteca de API de Amazon para Python?

Basado en mi investigación, PyAWS parece estar bien, pero todavía bastante crudo (y no se ha actualizado en mucho tiempo). Me pregunto si hay una biblioteca canónica obvia que me estoy perdiendo.

+0

Gente, ¿cuál es el estándar en estos días? Boto? – Cmag

+0

@Clustermagnet boto no parece tener la capacidad de consultar datos de productos. Es más para tratar con sus servicios de TI como EC2 y S3. – Endophage

+0

Amazon Web Services (AWS) es diferente del servicio web de Amazon Associates. boto es el SDK oficial de AWS (y no ofrece soporte para el servicio web de Amazon Associates). –

Respuesta

0

La única otra biblioteca que conozco es pyAmazon, que es el predecesor de pyaws. Si está familiarizado con la API de Amazon (o está dispuesto a hacerlo), probablemente pueda armar algo usted mismo con ZSI.

+4

Esto ya no funciona. No es compatible con el nuevo programa de Asociados. –

2

pyaws parece ser el mejor de todos. Lo usé aquí (my source code) Me funcionó bien.

1

pyaws es el mejor en mi opinión. La versión más disponible es 0.2.0, pero también hay una versión 0.3.0 que es algo más difícil de encontrar. La versión mejor conservada que he encontrado, que se basa en 0.3.0, está en bitbucket.

2

¿Qué tal boto? Alguien tiene alguna experiencia con eso? Acabo de empezar a buscar un paquete de Python para Amazon y Boto lo ve actualizado (v1.8c, versión 28-jun-2009), activo y completo (tiene una larga lista de interfaces compatibles).

+4

No es compatible con el programa ECS/Asociados. No se puede consultar datos del producto con él. –

3

PyAWS ya no está alojado en SourceForge. La última versión (0.3.0) está disponible a través del authors website.

Asegúrate de que también tomas el parche para los últimos cambios en la API de Amazons, mencionados en los comentarios.

22

Ahora hay otra alternativa: python-amazon-product-api. Es compatible con la versión de API 2009-11-01 2010-12-01.

+2

Actualmente se rompe en algo más alto que Python 3.3. Me he contactado con el mantenedor y me he ofrecido a ayudar. –

21

Estoy usando Bottlenose, "super impresionante envoltorio de Python para la API de Amazon Product Advertising" de Dan Loewenherz. No analiza el XML, por lo que estoy usando lxml.objectify:

ACCESS_KEY_ID = "..." 
SECRET_KEY = "..." 
ASSOC_TAG = "..." 

import bottlenose 
amazon = bottlenose.Amazon(ACCESS_KEY_ID, SECRET_KEY, ASSOC_TAG) 
response=amazon.ItemLookup(ItemId="B0018AFK38", ResponseGroup="OfferSummary") 

from lxml import objectify 
root = objectify.fromstring(response) 
root.Items.Item.OfferSummary.LowestNewPrice.FormattedPrice 
+1

Estoy usando esto también, y hasta ahora con excelentes resultados. Creo que mi parte favorita hasta ahora es su adición del parámetro Style en su howto: puede especificar un archivo xml2json xslt como lo demuestra aquí: https: // github.com/dlo/bottlenose – pho79

+0

Como nota al margen: la función xml2json se ha eliminado en el extremo de Amazon y bottlenoe genera un error al usar el parámetro "Estilo" ahora. ¡Biblioteca maravillosa, aún! –

+0

¿Se puede usar con Associate API? – Volatil3

7

Si lo que buscas es un simple, el acceso orientado a objetos a los productos de Amazon (operaciones de búsqueda y búsqueda), trate pitón por Amazon simple-product-api. Es un nuevo proyecto acabo en libertad:

http://github.com/yoavaviram/python-amazon-simple-product-api

su nuevo chico en el bloque!

+0

Esto se ve bien. ¿Hay alguna posibilidad de que el contenedor genere enlaces de afiliación en el futuro? – user714852

+3

Ya lo hace. Inicializa la API con su ID de asociado y el enlace de cada producto contendrá el elemento 'etiqueta'. –