webservice接口测试,需要用到suds库,suds只支持python2,如果是Python3.6版本,需要用到suds-jurko,

1) 下载 https://pypi.python.org/pypi/suds/0.4
2)解压压缩包,放到Python安装路径下的scripts文件夹下面。
3)然后在cmd命令行中,进入到suds-jurko-0.4.1.jurko.4文件下面,输入命令:python setup.py install
4)注意:如果在py中写代码 import suds报错,就要把suds-jurko-0.4.1.jurko.4文件夹下面的dist、suds以及suds_jurko.egg-info这三个文件夹,拷贝到Lib下面的site-packages路径下面
5)如果from suds.clientimportClient,提示 ImportError:No module named version 最后pip install --upgrade suds-jurko

其实可以一步到位 pip3 install suds-jurko

Python3 用的这个suds-jurko,安装方法跟Python2一样。
https://pypi.python.org/pypi/suds-jurko/0.6

测试:

In [5]: from suds.client import ClientIn [6]: client = Client('http://www.webxml.com.cn/webservices/qqOnlineWebServic...: e.asmx?wsdl')In [7]: print(client)Suds ( https://fedorahosted.org/suds/ )  version: 0.6Service ( qqOnlineWebService ) tns="http://WebXml.com.cn/"Prefixes (0)Ports (2):(qqOnlineWebServiceSoap)Methods (1):qqCheckOnline(xs:string qqCode)Types (0):(qqOnlineWebServiceSoap12)Methods (1):qqCheckOnline(xs:string qqCode)Types (0):In [8]: result=client.service.qqCheckOnline("100000")In [9]: orubt(result)
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-9-8d90f0601db2> in <module>()
----> 1 orubt(result)NameError: name 'orubt' is not definedIn [10]: print(result)
Y

以上测试了获取http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl这个地址的方法列表
可以看到其中有检查qq是否在线的方法,然后调用检测一个qq号码是否在线进行测试
另外如果获取数据量比较大,可以在获取数据之前设置超时时间
client.set_options(timeout=100) # 这里是秒

查看所有属性:

In [11]: print(client.options)
Definitions:cache: classes=(<class 'suds.cache.Cache'>,), default=<suds.cache.NoCach
e object at 0x00000000052385C0>documentStore: classes=(<class 'suds.store.DocumentStore'>,), default=<s
uds.store.DocumentStore object at 0x0000000004D18E10>extraArgumentErrors: classes=(<class 'bool'>,), default=Truefaults: classes=(<class 'bool'>,), default=Truetransport: classes=(<class 'suds.transport.Transport'>,), default=Noneservice: classes=(<class 'int'>, <class 'str'>), default=Noneport: classes=(<class 'int'>, <class 'str'>), default=Nonelocation: classes=(<class 'str'>,), default=Nonesoapheaders: classes=*, default=()wsse: classes=(<class 'suds.wsse.Security'>,), default=Nonedoctor: classes=(<class 'suds.xsd.doctor.Doctor'>,), default=Nonexstq: classes=(<class 'bool'>,), default=Trueprefixes: classes=(<class 'bool'>,), default=Trueretxml: classes=(<class 'bool'>,), default=Falseprettyxml: classes=(<class 'bool'>,), default=Falseautoblend: classes=(<class 'bool'>,), default=Falsecachingpolicy: classes=(<class 'int'>,), default=0plugins: classes=(<class 'list'>, <class 'tuple'>), default=[]nosend: classes=(<class 'bool'>,), default=Falseunwrap: classes=(<class 'bool'>,), default=True
Content:('cache', <suds.cache.ObjectCache object at 0x0000000005249208>)('documentStore', <suds.store.DocumentStore object at 0x0000000004D18E10
>)('extraArgumentErrors', True)('faults', True)('transport', <suds.transport.https.HttpAuthenticated object at 0x000000
0005238EB8>)('service', None)('port', None)('location', None)('soapheaders', ())('wsse', None)('doctor', None)('xstq', True)('prefixes', True)('retxml', False)('prettyxml', False)('autoblend', False)('cachingpolicy', 0)('plugins', [])('nosend', False)('unwrap', True)
Linked:
Definitions:proxy: classes=(<class 'dict'>,), default={}timeout: classes=(<class 'int'>, <class 'float'>), default=90headers: classes=(<class 'dict'>,), default={}username: classes=(<class 'str'>,), default=Nonepassword: classes=(<class 'str'>,), default=None
Content:('proxy', {})('timeout', 90)('headers', {})('username', None)('password', None)
Linked:
Definitions:cache: classes=(<class 'suds.cache.Cache'>,), default=<suds.cache.NoCach
e object at 0x00000000052385C0>documentStore: classes=(<class 'suds.store.DocumentStore'>,), default=<s
uds.store.DocumentStore object at 0x0000000004D18E10>extraArgumentErrors: classes=(<class 'bool'>,), default=Truefaults: classes=(<class 'bool'>,), default=Truetransport: classes=(<class 'suds.transport.Transport'>,), default=Noneservice: classes=(<class 'int'>, <class 'str'>), default=Noneport: classes=(<class 'int'>, <class 'str'>), default=Nonelocation: classes=(<class 'str'>,), default=Nonesoapheaders: classes=*, default=()wsse: classes=(<class 'suds.wsse.Security'>,), default=Nonedoctor: classes=(<class 'suds.xsd.doctor.Doctor'>,), default=Nonexstq: classes=(<class 'bool'>,), default=Trueprefixes: classes=(<class 'bool'>,), default=Trueretxml: classes=(<class 'bool'>,), default=Falseprettyxml: classes=(<class 'bool'>,), default=Falseautoblend: classes=(<class 'bool'>,), default=Falsecachingpolicy: classes=(<class 'int'>,), default=0plugins: classes=(<class 'list'>, <class 'tuple'>), default=[]nosend: classes=(<class 'bool'>,), default=Falseunwrap: classes=(<class 'bool'>,), default=True
Content:('cache', <suds.cache.ObjectCache object at 0x0000000005249208>)('documentStore', <suds.store.DocumentStore object at 0x0000000004D18E10
>)('extraArgumentErrors', True)('faults', True)('transport', <suds.transport.https.HttpAuthenticated object at 0x000000
0005238EB8>)('service', None)('port', None)('location', None)('soapheaders', ())('wsse', None)('doctor', None)('xstq', True)('prefixes', True)('retxml', False)('prettyxml', False)('autoblend', False)('cachingpolicy', 0)('plugins', [])('nosend', False)('unwrap', True)

python中用suds调用webservice相关推荐

  1. python suds_python使用suds调用webservice接口的方法

    最近做接口对接,遇到了.net开发的webservice接口,因为python第一次与webservice对接,连问带查,最后使用suds库来实现了 1.安装suds mac: sudo pip in ...

  2. python suds 调用webservice 缓存

    在linux系统中 如果webservice更新了字段 suds调用有可能缓存以前的字段或方法,对新的字段报找不到类型 TypeNotFound,或者对 新加的方法找不到该方法的错误. 当更新或添加w ...

  3. python suds_python suds访问webservice服务实现

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

  4. Python使用suds调用webserver接口

    首先,要安装suds-py3包,suds-py3包中可以调用client方法进行连接 对于初步学习python的用户来说,pycharm安装suds教程 :  File--->settings. ...

  5. suds调用webservice,option设置

    suds 是个好东西,轻便,主要是体积够小,依赖包也小,可以满足小脚本的需要. 现在最新的suds版本是0.4 ,好像已经不再更新了,不过依旧好用. 上这个网址下载,本人下的是tar包自己本地进行编译 ...

  6. python3用suds调用webService, 当参数是对象数组时

    from suds.client import Client url = 'http://127.0.0.1:3945/service/BMS_ExecuteSQLProcedureService.w ...

  7. Python3 通过 suds 访问 webservice

    Python通过suds访问webservice 本文描述了如何通过suds库访问webservice接口 Python通过suds访问webservice suds安装 Webservice访问测试 ...

  8. 使用suds-py3调用webservice WSDL接口

    使用suds-py3调用webservice WSDL接口 应用场景:我们需要通过Python调用webservice的接口,这需要使用到第三方库suds,这篇文章介绍使用suds-py3调用webs ...

  9. python使用suds来调用webservice

    对于python仅作为客户端调用webservice的情况,推荐使用suds库来完成,比起zsi,soapy之类,它可以说是相当轻量级,使用非常方便. 安装suds建议使用easy_insall来做. ...

最新文章

  1. 美博士环保聚焦“限漆令”出台之后的涂料行业
  2. Caused by java.lang.UnsatisfiedLinkError Cannot load library
  3. 聚类技术---复杂网络社团检测_自然场景中交通标志牌检测~文末送书
  4. notify()唤醒线程,不会立即释放锁对象,需要等到当前同步代码块都执行完后才能释放锁对象
  5. php 控制器 模板,php学习笔记(一)php模板与控制器
  6. 0宽字符加密_一文看懂异或加密,有动画演示呦
  7. ORA-01034: ORACLE not available
  8. 2000条你应知的WPF小姿势 基础篇69-73 WPF Freeze机制和Template
  9. 实验4-1-3 找出最小值 (20 分)
  10. java之classpath到底是什么
  11. 用tomcat搭建https
  12. 磁测仪高斯计与特斯拉计、磁通计的区别
  13. 我写了一份操作系统词典送给你!
  14. java实现的开源mocker造数神器,10分钟可完成千万级别数据的造数-入门篇
  15. GameJam线下48小时极限游戏开发体验
  16. 阴影(shadow mapping)(硬阴影)
  17. 预装Win 8.1 Pro环境下安装Win 7双系统
  18. 【Android 教程系列第 13 篇】在小米手机上使用安卓投屏软件 QtScrcpy ,为什么点击屏幕没有反应
  19. matlab riccati 方程,matlab解riccati方程
  20. Dragon slayer(搜索板题)

热门文章

  1. idea的服务器激活网址
  2. 在培训班里学IT技术,真的有用吗?
  3. 高等数学(预备知识之三角函数)
  4. 公告:Gear 与 Zenlink 达成战略合作
  5. Slackel Live ,惊艳与惊讶并存
  6. day03(连接查询,子查询,分页查询)
  7. jxl导入/导出Excel(Maven)
  8. 金蝶K3 WISE,销售订单即时库存显示不正确,和实际库存不付
  9. 雪祺电气冲刺深交所:年营收20.7亿 顾维控制47.9%股权
  10. SpringMVC:@RequestMapping放在类上面和设置请求方式和请求参数(动力)