python调用webservice接口(SOAP)
(2)调用示例:
需要先安装suds库:pip install suds
from suds.client import Client
#如果需要登录,则通过下面方式认证(电脑的开机账号密码),无需登录请忽略
from suds.transport.https import HttpAuthenticated
t = HttpAuthenticated(username='admin',passowrd='123')
test = Client(url,t)
#如果不需要登录直接像下面这样
test = Client(url)
print test //会显示所有的接口名及参数
#调用具体某个接口
[1]参数为普通参数类型,如string ,int
test.service.接口名(参数)
#以接口GetRandom为例,传递一个类型为String的参数,参数类型在url中type="xs:string"这里会显示
print test.service.GetRandom('firstParam') //传递一个参数,并打印调用结果
#传递2个string 参数
print test.service.GetRandom('firstParam','twoParam')
#传递1个string,1个int类型
print test.service.GetRandom('firstParam',2)
[2]参数为具体的某个对象,对象包含属性
对象类:User,属性:name,age,都为string
方法一:
m = {"name":"feng","age":"88"}
print test.service.GetRandom(m)
方法二:
m = client.factory.create('User')
m.name = "name"
m.age = "00"
print test.service.GetRandom(m)