Python3使用suds-jurko库来发送webservice接口请求
导入请求webservice接口需要用到的包
pip install suds-jurko
第一步:导入所需要的包
from suds.client import Client, WebFault
第二步:创建webservice对象,来调用webservice里面的各类接口
client = Client(url="项目地址")
第三步:发送请求,返回响应结果
如果参数有误就会报错,所以要对发送请求进行异常捕获
对响应的结果进行转换成字典
可变参数1:interface : 接口名(要换成项目中的接口名)
可变参数2: data : 参数信息(字典形式)
try:
res = client.service.interface(data)
result = dict(res)
except WebFault as e:
result = dict(e.fault)
*对发送webservice接口进行封装
class SendWebService(object):
"""发送webservice请求"""
@staticmethod
def send(url_path, interface, data):
"""
发送请求
:param url_path: 项目地址
:param interface: 接口名
:param data: 参数
:return: 状态码和信息
"""
# 创建webservice对象,来调用webservice里面的各类接口
client = Client(url=url_path)
try:
res = eval("client.service.{}({})".format(interface, data))
result = dict(res)
except WebFault as e:
result = dict(e.fault)
return result