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自动化测试之连接几组测试包实例
Sep 28 Python
编写Python脚本使得web页面上的代码高亮显示
Apr 24 Python
对比Python中__getattr__和 __getattribute__获取属性的用法
Jun 21 Python
Python实现的手机号归属地相关信息查询功能示例
Jun 08 Python
PyCharm在win10的64位系统安装实例
Nov 26 Python
Django处理文件上传File Uploads的实例
May 28 Python
深入理解Python异常处理的哲学
Feb 01 Python
关于Python形参打包与解包小技巧分享
Aug 24 Python
pycharm 2020 1.1的安装流程
Sep 29 Python
python 批量将中文名转换为拼音
Feb 07 Python
numpy实现RNN原理实现
Mar 02 Python
python基于scrapy爬取京东笔记本电脑数据并进行简单处理和分析
Apr 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
PHP中删除变量时unset()和null的区别分析
2011/01/27 PHP
浅析PHP微信支付通知的处理方式
2014/05/25 PHP
PHP编程实现计算抽奖概率算法完整实例
2017/08/09 PHP
PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例
2019/03/01 PHP
Laravel Validator自定义错误返回提示消息并在前端展示
2019/05/09 PHP
自己动手开发jQuery插件教程
2011/08/25 Javascript
解决jquery1.9不支持browser对象的问题
2013/11/13 Javascript
jQuery实现根据类型自动显示和隐藏表单
2015/03/18 Javascript
Jquery基础教程之DOM操作
2015/08/19 Javascript
再谈JavaScript异步编程
2016/01/27 Javascript
JavaScript利用HTML DOM进行文档操作的方法
2016/03/28 Javascript
JS判断来路是否是百度等搜索索引进行弹窗或自动跳转的实现代码
2016/10/09 Javascript
node.js连接mysql与基本用法示例
2019/01/05 Javascript
JS根据Unix时间戳显示发布时间是多久前【项目实测】
2019/07/10 Javascript
[57:50]DOTA2上海特级锦标赛主赛事日 - 4 胜者组决赛Secret VS Liquid第二局
2016/03/05 DOTA
Python文件及目录操作实例详解
2015/06/04 Python
深入学习python的yield和generator
2016/03/10 Python
python批量修改文件编码格式的方法
2018/05/31 Python
Python 判断图像是否读取成功的方法
2019/01/26 Python
Python控制键盘鼠标pynput的详细用法
2019/01/28 Python
Python实现快速排序的方法详解
2019/10/25 Python
Python中如何将一个类方法变为多个方法
2019/12/30 Python
详解用python -m http.server搭一个简易的本地局域网
2020/09/24 Python
css3编写浏览器背景渐变背景色的方法
2018/03/05 HTML / CSS
详解HTML5中的manifest缓存使用
2015/09/09 HTML / CSS
浅析HTML5:'data-'属性的作用
2018/01/23 HTML / CSS
大学生专业个人学习的自我评价
2013/10/26 职场文书
土木工程专业个人求职信
2013/12/05 职场文书
机关门卫岗位职责
2013/12/30 职场文书
客户表扬信范文
2014/01/10 职场文书
学校介绍信范文
2014/01/14 职场文书
超级搞笑检讨书
2014/01/15 职场文书
2014年社区综治工作总结
2014/11/17 职场文书
2015年施工员工作总结范文
2015/04/20 职场文书
2015年幼儿园中班开学寄语
2015/05/27 职场文书
15个值得收藏的JavaScript函数
2021/09/15 Javascript