在Python中使用zeep生成数组SOAP查询

时间:2019-05-30 06:09:52

标签: python soap zeep

我正在尝试使用zeep库发送通过多个ID的查询。我已经尝试过here发布的解决方案,但无法使其正常工作。

如果我遍历格式化为字典的各个搜索词,我可以使其正常工作:

option = {'stationID': '1:123456' }
data = client.service.getStationStatus(option)

但是,API还支持以数组形式给出的此类索引(stationIDs)的 list 。我的问题是,当标识符都相同时如何生成此数组。我尝试了嵌套字典和列表字典的许多变体。我还尝试了使用client.get_type()然后附加到这些选项的方法。同样,这适用于单个ID,但是我无法使用数组。它只返回第一个值。

根据记录的示例所需的SOAP:

<stationIDs>
     <stationID>1:41613</stationID>
     <stationID>1:39183</stationID>
     <stationID>2:59173</stationID>
     <stationID>4:39143</stationID>
 </stationIDs>

我的尝试之一:

options = {'stationIDs' :
            [{'stationID': '1:812581' }, 
             {'stationID': '1:1762561'}, 
             {'stationID': '1:114123' }, 
             {'stationID': '1:1762571'} ] 
             } 

谁能指出哪种潜在格式正确?

0 个答案:

没有答案