Python3 webservice接口测试代码详解


Posted in Python onJune 23, 2020

一、使用python3做webervice接口测试的第三方库选择suds-jurko库,可以直接pip命令直接下载,也可以在pypi官网下载压缩包进行手动安装

二、安装好后,导入Client:from suds.client import Client。发送一条请求

from suds.client import Client
url = 'http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl'
client = Client(url)
# 打印所有webservice接口信息
print(client)

但是会出现错误:

Traceback (most recent call last):
 File "E:/PycharmProjects/lianxiUItestSelenium/***.py", line 53, in <module>
  client = Client('http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl')
 File "E:\PycharmProjects\lianxiUItestSelenium\venv\lib\site-packages\suds\client.py", line 115, in __init__
  self.wsdl = reader.open(url)
 File "E:\PycharmProjects\lianxiUItestSelenium\venv\lib\site-packages\suds\reader.py", line 150, in open
  d = self.fn(url, self.options)
 File "E:\PycharmProjects\lianxiUItestSelenium\venv\lib\site-packages\suds\wsdl.py", line 159, in __init__
  self.build_schema()
 File "E:\PycharmProjects\lianxiUItestSelenium\venv\lib\site-packages\suds\wsdl.py", line 220, in build_schema
  self.schema = container.load(self.options)
 File "E:\PycharmProjects\lianxiUItestSelenium\venv\lib\site-packages\suds\xsd\schema.py", line 94, in load
  child.dereference()
 File "E:\PycharmProjects\lianxiUItestSelenium\venv\lib\site-packages\suds\xsd\schema.py", line 319, in dereference
  midx, deps = x.dependencies()
 File "E:\PycharmProjects\lianxiUItestSelenium\venv\lib\site-packages\suds\xsd\sxbasic.py", line 437, in dependencies
  e = self.__deref()
 File "E:\PycharmProjects\lianxiUItestSelenium\venv\lib\site-packages\suds\xsd\sxbasic.py", line 483, in __deref
  raise TypeNotFound(self.ref)
suds.TypeNotFound: Type not found: '(schema, http://www.w3.org/2001/XMLSchema, )'

三、只需要过滤掉一下地址就可以了。导入ImportDoctor和Import就可以

from suds.client import Client
from suds.xsd.doctor import ImportDoctor, Import

imp = Import('http://www.w3.org/2001/XMLSchema',location='http://www.w3.org/2001/XMLSchema.xsd')
imp.filter.add('http://WebXml.com.cn/')
doctor = ImportDoctor(imp)
client = Client('http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl',doctor=doctor)
print(client)

输出结果:

(WeatherWebServiceSoap)
  Methods (5):
    getSupportCity(xs:string byProvinceName)
    getSupportDataSet()
    getSupportProvince()
    getWeatherbyCityName(xs:string theCityName)
    getWeatherbyCityNamePro(xs:string theCityName, xs:string theUserID)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python ORM框架SQLAlchemy学习笔记之数据查询实例
Jun 10 Python
Python3.0与2.X版本的区别实例分析
Aug 25 Python
Python中if __name__ == &quot;__main__&quot;详细解释
Oct 21 Python
Python进程通信之匿名管道实例讲解
Apr 11 Python
python 调用win32pai 操作cmd的方法
May 28 Python
python库lxml在linux和WIN系统下的安装
Jun 24 Python
python实现彩票系统
Jun 28 Python
Python实现繁体中文与简体中文相互转换的方法示例
Dec 18 Python
Python字典对象实现原理详解
Jul 01 Python
Python树莓派学习笔记之UDP传输视频帧操作详解
Nov 15 Python
Django 实现xadmin后台菜单改为中文
Nov 15 Python
基于Python的接口自动化读写excel文件的方法
Jan 15 Python
python和JavaScript哪个容易上手
Jun 23 #Python
pytorch 查看cuda 版本方式
Jun 23 #Python
Spring @Enable模块驱动原理及使用实例
Jun 23 #Python
PyTorch-GPU加速实例
Jun 23 #Python
Python基于yaml文件配置logging日志过程解析
Jun 23 #Python
解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题
Jun 23 #Python
Python 程序报错崩溃后如何倒回到崩溃的位置(推荐)
Jun 23 #Python
You might like
php正则表达式使用的详细介绍
2013/04/27 PHP
php自定义hash函数实例
2015/05/05 PHP
ThinkPHP进程计数类Process用法实例详解
2015/09/25 PHP
PHP使用第三方即时获取物流动态实例详解
2017/04/27 PHP
使用JQUERY Tabs插件宿主IFRAMES
2010/01/01 Javascript
Javascript中的for in循环和hasOwnProperty结合使用
2013/06/05 Javascript
js 动态加载事件的几种方法总结
2013/12/25 Javascript
chrome下jq width()方法取值为0的解决方法
2014/05/26 Javascript
Node.js中创建和管理外部进程详解
2014/08/16 Javascript
nodejs下打包模块archiver详解
2014/12/03 NodeJs
ANGULARJS中用NG-BIND指令实现单向绑定的例子
2014/12/08 Javascript
PHP+jQuery实现随意拖动层并即时保存拖动位置
2015/04/30 Javascript
jquery任意位置浮动固定层插件用法实例
2015/05/29 Javascript
通过原生JS实现为元素添加事件的方法
2016/11/23 Javascript
详解jQuery中的DOM操作
2016/12/23 Javascript
javascript 动态生成css代码的两种方法
2017/03/17 Javascript
tween.js缓动补间动画算法示例
2018/02/13 Javascript
JavaScript类的继承多种实现方法
2020/05/30 Javascript
[55:44]完美世界DOTA2联赛决赛 FTD vs Phoenix 第二场 11.08
2020/11/11 DOTA
Python基础之函数用法实例详解
2014/09/10 Python
python模拟鼠标拖动操作的方法
2015/03/11 Python
python获取指定时间差的时间实例详解
2017/04/11 Python
Pycharm学习教程(2) 代码风格
2017/05/02 Python
Python实现判断给定列表是否有重复元素的方法
2018/04/11 Python
python字典的setdefault的巧妙用法
2019/08/07 Python
Django 5种类型Session使用方法解析
2020/04/29 Python
python如何输出反斜杠
2020/06/18 Python
python字符串拼接+和join的区别详解
2020/12/03 Python
单位单身证明范本
2014/01/11 职场文书
服务员岗位职责
2014/01/29 职场文书
教师师德反思材料
2014/02/15 职场文书
个人四风问题对照检查材料
2014/10/01 职场文书
2014年感恩节活动策划方案
2014/10/06 职场文书
银行业务授权委托书
2014/10/10 职场文书
优秀党员先进材料
2014/12/18 职场文书
爱鸟护鸟的宣传语
2015/07/13 职场文书