易趣API - addItem ShipToLocation仅保存最后一个值

时间:2016-07-04 14:34:54

标签: ebay ebay-api

这是我第一次接触eBay API,我一开始就遇到了问题。我在python中编码,我正在尝试调用addItem,但我无法正确定义国际运输选项。

我想发送我的产品国内为2.50GBP,国际到亚洲,日本,澳大利亚为20GBP和欧洲,欧洲联盟,德国为10GBP。我不知道如何宣布它......

到目前为止我尝试了什么?

 "ShippingDetails": {
             "GlobalShipping": "true",
             "ShippingType": "Flat",
             "ShippingServiceOptions": {
                 "ShippingService": "UK_OtherCourier",
                 "ShippingServiceCost": "2.50",
             },
             "InternationalShippingServiceOption": {
                 "ShippingService": "UK_RoyalMailAirmailInternational",
                 "ShippingServiceCost": "10",
                 "ShipToLocation": "Europe",
                 "ShipToLocation": "EuropeanUnion",
                 "ShipToLocation": "DE"
             }
         }

但是当我运行该代码时,我的列表只有2.50GBP的国内运费,并且运往德国的10GBP(仅保存最后的ShipToLocation)。如何设置正确的运费区域?

1 个答案:

答案 0 :(得分:1)

在Python Dictionary中,您不允许提供重复值。

你已经在单个dict中写了三次ShipToLocation,因为系统只考虑最后一个。

您可以使用以下方法。

"ShippingDetails": {
             "GlobalShipping": "true",
             "ShippingType": "Flat",
             "ShippingServiceOptions": {
                 "ShippingService": "UK_OtherCourier",
                 "ShippingServiceCost": "2.50",
             },
             "InternationalShippingServiceOption": {
                 "ShippingService": "UK_RoyalMailAirmailInternational",
                 "ShippingServiceCost": "10",
                 "ShipToLocation": ["Europe","EuropeanUnion","DE"]
             }
         }

您应该在列表中写下ShipToLocation值。

现在当你转换dict_to_xml时,Python库将自动管理xml标签。

以下是转换dict_to_xml和xml_to_dict的最佳库之一。

https://github.com/Shopify/pyactiveresource/tree/master/pyactiveresource