如何使用具有不同WSDL和目标地址的SUDS?

时间:2014-03-07 13:36:37

标签: python soap wsdl suds

我的WSDL文件位于http://www.onvif.org/ver10/device/wsdl/devicemgmt.wsdl,我应该调用方法的目标是http://192.168.0.33:8080/onvif/services,如何配置SUDS客户端使用这两个地址?

2 个答案:

答案 0 :(得分:1)

这篇文章回答了你的问题:Changing web service url in SUDS library

from suds.client import Client
client = Client('http://www.onvif.org/ver10/device/wsdl/devicemgmt.wsdl') 
client.wsdl.services[0].setlocation('http://192.168.0.33:8080/onvif/services')

答案 1 :(得分:0)

我一直在寻找解决同一问题的方法。我想出了另一种解决方案,比安蒂提供的解决方案更优雅:

from suds.client import Client
client = Client(
    'http://www.onvif.org/ver10/device/wsdl/devicemgmt.wsdl',
    location='http://192.168.0.33:8080/onvif/services',
)