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中将字典转换成其json字符串
Jul 16 Python
Python实现Linux下守护进程的编写方法
Aug 22 Python
python创建临时文件夹的方法
Jul 06 Python
Python的Django应用程序解决AJAX跨域访问问题的方法
May 31 Python
浅述python中argsort()函数的实例用法
Mar 30 Python
python奇偶行分开存储实现代码
Mar 19 Python
浅析Python 3 字符串中的 STR 和 Bytes 有什么区别
Oct 14 Python
PyCharm代码提示忽略大小写设置方法
Oct 28 Python
python使用pdfminer解析pdf文件的方法示例
Dec 20 Python
Python中捕获键盘的方式详解
Mar 28 Python
Django操作session 的方法
Mar 09 Python
通过代码实例了解Python sys模块
Sep 14 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
后宫无数却洁身自好的男主,唐三只爱小舞
2020/03/02 国漫
PHP数组 为文章加关键字连接 文章内容自动加链接
2011/12/29 PHP
php htmlspecialchars()与shtmlspecialchars()函数的深入分析
2013/06/05 PHP
php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
2015/07/06 PHP
php事件驱动化设计详解
2016/11/10 PHP
Nigma vs Liquid BO3 第二场2.13
2021/03/10 DOTA
修改jquery里的dialog对话框插件为框架页(iframe) 的方法
2010/09/14 Javascript
js+html+css实现鼠标移动div实例
2013/01/30 Javascript
父元素与子iframe相互获取变量和元素对象的具体实现
2013/10/15 Javascript
js 跳出页面的frameset框架示例介绍
2013/12/23 Javascript
Javascript基础教程之if条件语句
2015/01/18 Javascript
判断访客终端类型集锦
2015/06/05 Javascript
JavaScript取得WEB安全颜色列表的方法
2015/07/14 Javascript
JS实现的手机端精简幻灯片效果
2016/09/05 Javascript
Vue获取DOM元素样式和样式更改示例
2017/03/07 Javascript
微信小程序wepy框架笔记小结
2018/08/08 Javascript
微信小程序实现星星评价效果
2018/11/02 Javascript
vue.js多页面开发环境搭建过程
2019/04/24 Javascript
vue项目从node8.x升级到12.x后的问题解决
2019/10/25 Javascript
vue实现路由监听和参数监听
2019/10/29 Javascript
vue监听浏览器原生返回按钮,进行路由转跳操作
2020/09/09 Javascript
详解supervisor使用教程
2017/11/21 Python
对python的输出和输出格式详解
2018/12/08 Python
Django框架登录加上验证码校验实现验证功能示例
2019/05/23 Python
在python里面运用多继承方法详解
2019/07/01 Python
Django连接数据库并实现读写分离过程解析
2019/11/13 Python
Python实现寻找回文数字过程解析
2020/06/09 Python
Python爬虫抓取论坛关键字过程解析
2020/10/19 Python
python如何调用php文件中的函数详解
2020/12/29 Python
CSS3实现网站商品展示效果图
2020/01/18 HTML / CSS
Chemist Warehouse官方海外旗舰店:澳洲第一连锁大药房
2017/08/25 全球购物
应聘自荐信
2013/12/14 职场文书
美发店5.1活动方案
2014/01/24 职场文书
网络宣传方案
2014/03/15 职场文书
社区健康教育实施方案
2014/03/18 职场文书
公司离职证明标准格式
2014/11/18 职场文书