python suds访问webservice服务实现


Posted in Python onJune 26, 2020

安装suds

  在Python3环境下如果使用:pip install suds,应该会报ImportError: No module named client,这里推荐安装suds-py3。

使用

1.获取所有方法

webservice中的方法,跟http中的get、post这种类似。

from suds.client import Client

url = 'http://******************?wsdl' # wsdl地址
client = Client(url)
print(client) # 查看定义的所有方法与请求所需携带的参数

返回的Methods中即定义的方法,包括请求所需携带的参数与参数类型。

python suds访问webservice服务实现

2.调用方法

首先调用一个不带参数的方法。

from suds.client import Client

url = 'http://************************?wsdl' # wsdl地址
client = Client(url)
response = client.service.getRealtimeDataList() # 返回列表,列表每一项是一个realtimeVo对象
for i in response:
 # 使用Client的dict方法,将realtimeVo对象转换为dict
 print(Client.dict(i))

当调用需要传入参数的方法时,在对应方法内直接按顺序传入就可以。

这里注意参数的类型,比如XML的dateTime类型,不能直接传入python的datetime类型,会报错的。这里需要用suds的DateTime转换一下。具体代码如下。

from suds.client import Client
from suds.sax.date import DateTime
from datetime import datetime, timedelta

url = 'http://***************************?wsdl' # wsdl地址
client = Client(url)

now = datetime.now() - timedelta(days=1)
yesterday = now.strftime("%Y-%m-%d 00:00:00") # 返回字符串形式的日期
date_time = DateTime(yesterday) # DateTime既可以直接传入字符串也可以直接传入datetime对象,我这里传入的字符串

response = client.service.getHistoryDataList(date_time, date_time, "address", "corpCode") # 返回列表,列表每一项是一个realtimeVo对象
for i in response:
 # 使用Client的dict方法,将realtimeVo对象转换为dict
 print(Client.dict(i))

3.其他

其他方法,比如:

client.set_options() # 设置头信息

目前本人没用到过。

到此这篇关于python suds访问webservice服务实现的文章就介绍到这了,更多相关python suds访问webservice服务内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Django框架中render_to_response()函数的使用方法
Jul 16 Python
详解如何将python3.6软件的py文件打包成exe程序
Oct 09 Python
Django数据库连接丢失问题的解决方法
Dec 29 Python
Python3 max()函数基础用法
Feb 19 Python
Python去除字符串前后空格的几种方法
Mar 04 Python
pyqt5 实现工具栏文字图片同时显示
Jun 13 Python
详解使用Python下载文件的几种方法
Oct 13 Python
Python+opencv+pyaudio实现带声音屏幕录制
Dec 23 Python
Jupyter notebook设置背景主题,字体大小及自动补全代码的操作
Apr 13 Python
python dict乱码如何解决
Jun 07 Python
Python实现自动装机功能案例分析
Oct 22 Python
Python基本数据类型之字符串str
Jul 21 Python
解析Python 偏函数用法全方位实现
Jun 26 #Python
Python如何优雅删除字符列表空字符及None元素
Jun 25 #Python
使用pytorch实现论文中的unet网络
Jun 24 #Python
python连接mysql有哪些方法
Jun 24 #Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
Jun 24 #Python
Python Tornado核心及相关原理详解
Jun 24 #Python
如何使用Python处理HDF格式数据及可视化问题
Jun 24 #Python
You might like
php的list()的一步操作给一组变量进行赋值的使用
2011/05/18 PHP
Yii调试查看执行SQL语句的方法
2016/07/15 PHP
PHP使用FFmpeg获取视频播放总时长与码率等信息
2016/09/13 PHP
服务器安全设置的几个注册表设置
2007/07/28 Javascript
深入认识javascript中的eval函数
2009/11/02 Javascript
javascript两段代码,两个小技巧
2010/02/04 Javascript
从JQuery源码分析JavaScript函数的apply方法与call方法
2014/09/25 Javascript
JS 新增Cookie 取cookie值 删除cookie 举例详解
2014/10/10 Javascript
深入探讨前端框架react
2015/12/09 Javascript
jQuery UI Bootstrap是什么?
2016/06/17 Javascript
JS如何判断json是否为空
2016/07/06 Javascript
jQuery之动画效果大全
2016/11/09 Javascript
使用jquery的jsonp如何发起跨域请求及其原理详解
2017/08/17 jQuery
微信小程序列表渲染功能之列表下拉刷新及上拉加载的实现方法分析
2017/11/27 Javascript
JS基于贪心算法解决背包问题示例
2017/11/27 Javascript
js中事件对象和事件委托的介绍
2019/01/21 Javascript
微信公众平台 客服接口发消息的实现代码(Java接口开发)
2019/04/17 Javascript
弱类型语言javascript开发中的一些坑实例小结【变量、函数、数组、对象、作用域等】
2019/08/07 Javascript
Vue通过getAction的finally来最大程度避免影响主数据呈现问题
2020/04/24 Javascript
Javascript幻灯片播放功能实现过程解析
2020/05/07 Javascript
JavaScript 装逼指南(js另类写法)
2020/05/10 Javascript
JavaScript, select标签元素左右移动功能实现
2020/05/14 Javascript
Vue中 axios delete请求参数操作
2020/08/25 Javascript
[04:40]2016国际邀请赛中国区预选赛全程TOP10镜头集锦
2016/07/01 DOTA
Python 实现日志同时输出到屏幕和文件
2020/02/19 Python
在Ubuntu 20.04中安装Pycharm 2020.1的图文教程
2020/04/30 Python
捷克家电和家具购物网站:OKAY.cz
2020/07/23 全球购物
大二自我鉴定
2014/01/31 职场文书
保卫科工作岗位职责
2014/03/01 职场文书
大学生两会精神学习心得体会
2014/03/10 职场文书
初一学生期末评语
2014/04/24 职场文书
2015年女职工工作总结
2015/05/15 职场文书
2015初中教导处工作总结
2015/07/21 职场文书
新农村建设指导员工作总结
2015/08/13 职场文书
学生会主席任命书
2015/09/21 职场文书
Lombok的详细使用及优缺点总结
2021/07/15 Java/Android