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的类方法和静态方法
Dec 13 Python
Python单元测试框架unittest使用方法讲解
Apr 13 Python
python实现提取百度搜索结果的方法
May 19 Python
用 Python 爬了爬自己的微信朋友(实例讲解)
Aug 25 Python
python中hashlib模块用法示例
Oct 30 Python
Python中str.join()简单用法示例
Mar 20 Python
python读csv文件时指定行为表头或无表头的方法
Jun 26 Python
django如何实现视图重定向
Jul 24 Python
浅析Python 引号、注释、字符串
Jul 25 Python
python requests库爬取豆瓣电视剧数据并保存到本地详解
Aug 10 Python
Python如何使用正则表达式爬取京东商品信息
Jun 01 Python
Python3爬虫关于代理池的维护详解
Jul 30 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
特详细的PHPMYADMIN简明安装教程
2008/08/01 PHP
php加密解密实用类分享
2014/01/07 PHP
使用PHP similar text计算两个字符串相似度
2015/11/06 PHP
PHP简单判断字符串是否包含另一个字符串的方法
2016/03/25 PHP
Laravel5.5 视图 - 创建视图和数据传递示例
2019/10/21 PHP
动态显示可输入的字数提示还可以输入的字数
2014/04/01 Javascript
HTML页面弹出居中可拖拽的自定义窗口层
2014/05/07 Javascript
JavaScript DOM事件(笔记)
2015/04/08 Javascript
javascript实现完美拖拽效果
2015/05/06 Javascript
jquery实现的动态回到顶部特效代码
2015/10/28 Javascript
Vue.js中使用iView日期选择器并设置开始时间结束时间校验功能
2018/08/12 Javascript
详解用Webpack与Babel配置ES6开发环境
2019/03/12 Javascript
Angular脚手架开发的实现步骤
2019/04/09 Javascript
vue 实现小程序或商品秒杀倒计时
2019/04/14 Javascript
Vue3.0结合bootstrap创建多页面应用
2019/05/28 Javascript
Node.js API详解之 net模块实例分析
2020/05/18 Javascript
微信小程序实现搜索框功能及踩过的坑
2020/06/19 Javascript
Python多线程、异步+多进程爬虫实现代码
2016/02/17 Python
python+opencv实现动态物体追踪
2018/01/09 Python
python数字图像处理实现直方图与均衡化
2018/05/04 Python
使用OpenCV实现仿射变换—缩放功能
2019/08/29 Python
基于torch.where和布尔索引的速度比较
2020/01/02 Python
tensorflow实现读取模型中保存的值 tf.train.NewCheckpointReader
2020/02/10 Python
Python中sys模块功能与用法实例详解
2020/02/26 Python
Django Form常用功能及代码示例
2020/10/13 Python
python单例模式的应用场景实例讲解
2021/02/24 Python
详解HTML5中的标签
2015/06/19 HTML / CSS
男女时尚与复古风格在线购物:RoseGal(全球免费送货)
2017/07/19 全球购物
开会迟到检讨书
2014/01/08 职场文书
总经理助理的职责
2014/03/14 职场文书
民用住房租房协议书
2014/10/29 职场文书
五年级学生评语大全
2014/12/26 职场文书
2016年第29个世界无烟日宣传活动总结
2016/04/06 职场文书
Redis延迟队列和分布式延迟队列的简答实现
2021/05/13 Redis
MySQL CHAR和VARCHAR该如何选择
2021/05/31 MySQL
Linux中文件的基本属性介绍
2022/06/01 Servers