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

我想以2.50GBP的价格将我的商品寄到国内,将20GBP的商品寄到亚洲,日本,澳大利亚,将10GBP的商品寄到欧洲,EuropeanUnion,德国。我不知道如何声明...

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

 "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)。如何正确设置成本的运送地区?

最佳答案

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

您已经在单个字典中写了3次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

09-27 08:40