这是我第一次接触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