python - 通过 Python 通过一次 API 调用更新 Shopify 价格

标签 python shopify

我正在使用 Shopify Python API,并且我想通过一次 API 调用来更新我的一款产品的价格。这是因为他们的 API 受到限制,而我正在更新大量项目,因此 API 调用减少 50% 将显着提高我的整体运行时间。

现在我正在这样做:

product = shopify.Product.find(shopify_id)
product.variants[0].price = new_price
product.save()

这需要两次 API 调用。有没有办法在给定 Shopify ID 的情况下通过单个 API 调用来更新价格?我尝试了这个(我在论坛上被告知,为产品设置价格会更新所有变体):

product = shopify.Product(dict(id=shopify_id, price=new_price))
product.save()

和 save() 返回 True,但价格没有更新。然后我尝试了这个:

product = shopify.Product(dict(id=shopify_id, price=new_price))
product.variants = [shopify.Variant()]
product.variants[0].price = new_price
product.save()

并且 save() 返回 False,product.errors.full_messages() 返回 ['选项不唯一']。

最佳答案

我知道这个问题已经很老了,但这是一个从未得到正确答案的好问题。似乎所有回复都没有完全听到您的问题。

我一直在开发一个 Shopify 应用程序,该应用程序需要一次更新许多产品,这可能需要一段时间,特别是如果您需要为每个产品调用 API 两次(即一次检索,再次更新)。

我必须深入研究源代码才能找到这个,但产品类有一个 add_variant 方法似乎可以解决问题。

product = shopify.Product(dict(id=123456789))
variant = shopify.Variant(dict(id=987654321, price=9.99))
product.add_variant(variant)
product.save()

这将更新产品,并允许您基本上对产品执行 PUT 请求。您可以根据需要更新任意数量的变体,并且不会干扰其他变体。此外,它不需要初始产品调用来检索您正在更新的产品。

关于python - 通过 Python 通过一次 API 调用更新 Shopify 价格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25478601/

相关文章:

python - 如何在单元测试中使用 JSON 发送请求

python - 如何使用python删除excel中的所有零值

javascript - 将产品添加到购物车时,会为产品添加默认选项,但不会添加选定的选项

e-commerce - PrestaShop 与 Shopify

javascript - 如何过滤 JSON.parse 结果

python - 如何追加 AWS S3 存储桶通知配置

python - Gnuplot 从 python 发送换行符和 ",\"

python - 如何在python请求库中实现重试机制?

javascript - Shopify API 访问已被禁用

javascript - 数据属性在 JQuery 中返回未定义