Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用pythonzeep从具有多个绑定的pythonsoap客户机访问所有Webservice方法_Python_Web Services_Soap_Wsdl_Zeep - Fatal编程技术网

如何使用pythonzeep从具有多个绑定的pythonsoap客户机访问所有Webservice方法

如何使用pythonzeep从具有多个绑定的pythonsoap客户机访问所有Webservice方法,python,web-services,soap,wsdl,zeep,Python,Web Services,Soap,Wsdl,Zeep,我必须使用来自SOAP服务的数据,这对我来说是一项新技术。我使用以下代码从服务器连接: 来自请求导入会话的 从requests.auth导入HTTPBasicAuth 从zeep导入客户端 从zeep.transports进口运输 wsdl='my_service.com/MEX?wsdl' 用户名='john_doe' 密码='password' 会话=会话() session.auth=HTTPBasicAuth(用户名、密码) 传输=传输(会话=会话) client=client(wsdl

我必须使用来自SOAP服务的数据,这对我来说是一项新技术。我使用以下代码从服务器连接:

来自请求导入会话的

从requests.auth导入HTTPBasicAuth
从zeep导入客户端
从zeep.transports进口运输
wsdl='my_service.com/MEX?wsdl'
用户名='john_doe'
密码='password'
会话=会话()
session.auth=HTTPBasicAuth(用户名、密码)
传输=传输(会话=会话)
client=client(wsdl=wsdl,transport=transport)
通过使用SoapUi软件并与此服务器连接,我意识到它有三个绑定,每个绑定都有很多Web服务。但是,使用Python,我只能在第一次绑定时访问Web服务(通过client.service)。我想知道如何从另外两个绑定访问Webservice方法


OBS:client.wsdl.bindings返回一个dict映射,将一些包含在SoapUI上看到的绑定名称的URL映射到SOAP11绑定实例。

默认情况下,
Zeep
拾取wsdl中的第一个绑定。此绑定可通过以下方式获得:
客户端服务
。要使用特定绑定,可以对客户端对象使用
bind()
方法 示例代码:

service2 = client.bind('SecondService', 'Port12')
service2.someOperation(arg1='abc', arg2=2)