python使用SUDS调用webservice

Dive into Python一书中介绍的古老的调用webservice方法需要如下包:PyXML, fpconst, SOAPpy

上述包基本上在04年05年左右就不再维护了,并且多数不再提供python2.5以上的版本的支持,显然我们还要用它们的话,会比较蛋疼,在stackoverflow上看到有人在问如今python下“最好”的SOAP客户端,还真有人回复了:点此查看

我仔细读了一下回复,最终选择了SUDS,文档在此

    url="http://example.com/test.asmx?wsdl"


client=Client(url)

#查看远程方法
print client

#简单调用
client.service.hello()

#传递对象参数(方法1)
#假定我做了一个myc的class,有p1,p2两个属性
m=client.facty.create(""myc"")
m.p1="my name is "
m.p2="walker"
result=client.service.ClassIn(m)
print result


#传递对象参数(方法2)
m={"p1":"my name is ","p2":"walker"}
client=Client(url)
result=client.service.ClassIn(m)
print result

#返回对象
result=client.service.ClassOut()
print result.p1 #可见返回的对象是可以直接用的

# 演示suds把异常包装成元组送出
client=Client(url,faults=False)
result=client.service.ClassIn("fadlskfjsdafjk")
print result
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值