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 相关文章推荐
Python读取mp3中ID3信息的方法
Mar 05 Python
给Python中的MySQLdb模块添加超时功能的教程
May 05 Python
Python实现统计单词出现的个数
May 28 Python
Python 将pdf转成图片的方法
Apr 23 Python
pandas实现to_sql将DataFrame保存到数据库中
Jul 03 Python
python3.6+django2.0+mysql搭建网站过程详解
Jul 24 Python
python绘图模块matplotlib示例详解
Jul 26 Python
Python ORM编程基础示例
Feb 02 Python
Python os模块常用方法和属性总结
Feb 20 Python
Python如何实现定时器功能
May 28 Python
python实现人工蜂群算法
Sep 18 Python
python 数据类型强制转换的总结
Jan 25 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中获取变量的变量名的一段代码的bug分析
2011/07/07 PHP
php数组的一些常见操作汇总
2011/07/17 PHP
使用PHP遍历文件夹与子目录的函数代码
2011/09/26 PHP
php中get_headers函数的作用及用法的详细介绍
2013/04/27 PHP
php装饰者模式简单应用案例分析
2019/10/23 PHP
ExtJS 2.0实用简明教程 之ExtJS版的Hello
2009/04/29 Javascript
JSONP 跨域共享信息
2012/08/16 Javascript
js 在定义的时候立即执行的函数表达式(function)写法
2013/01/16 Javascript
js实现瀑布流的一种简单方法实例分享
2013/11/04 Javascript
JavaScript清空数组元素的两种方法简单比较
2015/07/10 Javascript
jquery的ajax提交form表单的两种方法小结(推荐)
2016/05/25 Javascript
JS区分Object与Aarry的六种方法总结
2017/02/27 Javascript
JavaScript中变量提升与函数提升经典实例分析
2018/07/26 Javascript
Bootstrap Paginator+PageHelper实现分页效果
2018/12/29 Javascript
原生JS实现留言板功能
2020/02/08 Javascript
Postman内建变量常用方法实例解析
2020/07/28 Javascript
[53:50]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
Python3中_(下划线)和__(双下划线)的用途和区别
2019/04/26 Python
python爬虫 爬取超清壁纸代码实例
2019/08/16 Python
django执行原始查询sql,并返回Dict字典例子
2020/04/01 Python
django在开发中取消外键约束的实现
2020/05/20 Python
Python的3种运行方式:命令行窗口、Python解释器、IDLE的实现
2020/10/10 Python
中国一家专注拼团的社交购物网站:拼多多
2018/06/13 全球购物
Overload和Override的区别
2012/09/02 面试题
2013年军训通讯稿
2014/02/05 职场文书
优秀大专毕业生求职信
2014/08/04 职场文书
公司委托书范本5篇
2014/09/20 职场文书
大雁塔英文导游词
2015/02/10 职场文书
统计员岗位职责范本
2015/04/14 职场文书
2015年仓库管理员工作总结
2015/04/21 职场文书
2015大学迎新标语
2015/07/16 职场文书
如何将numpy二维数组中的np.nan值替换为指定的值
2021/05/14 Python
深入解析MySQL索引数据结构
2021/10/16 MySQL
Go语言读取txt文档的操作方法
2022/01/22 Golang
Dubbo+zookeeper搭配分布式服务的过程详解
2022/04/03 Java/Android
Golang 遍历二叉树
2022/04/19 Golang