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操作CouchDB数据库简单示例
Mar 10 Python
进一步了解Python中的XML 工具
Apr 13 Python
Django中login_required装饰器的深入介绍
Nov 24 Python
TensorFlow高效读取数据的方法示例
Feb 06 Python
Python中一些不为人知的基础技巧总结
May 19 Python
详解如何管理多个Python版本和虚拟环境
May 10 Python
pytorch使用Variable实现线性回归
May 21 Python
python切片的步进、添加、连接简单操作示例
Jul 11 Python
Pytorch中accuracy和loss的计算知识点总结
Sep 10 Python
python利用openpyxl拆分多个工作表的工作簿的方法
Sep 27 Python
Python 文件数据读写的具体实现
Jan 24 Python
python 穷举指定长度的密码例子
Apr 02 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权重计算方法代码分享
2014/01/09 PHP
destoon实现底部添加你是第几位访问者的方法
2014/07/15 PHP
PHP回溯法解决0-1背包问题实例分析
2015/03/23 PHP
php文件类型MIME对照表(比较全)
2016/10/07 PHP
Javascript-Mozilla和IE中的一个函数直接量的问题
2007/01/09 Javascript
JS 打印功能代码可实现打印预览、打印设置等
2014/10/31 Javascript
浅谈javascript回调函数
2014/12/07 Javascript
node.js中使用socket.io制作命名空间
2014/12/15 Javascript
JQuery动态添加和删除表格行的方法
2015/03/09 Javascript
需灵活掌握的Bootstrap预定义排版类 你精通吗?
2016/06/20 Javascript
require.js配合插件text.js实现最简单的单页应用程序
2016/07/12 Javascript
Angular之指令Directive用法详解
2017/03/01 Javascript
纯js的右下角弹窗实例
2017/03/12 Javascript
ReactNative中使用Redux架构总结
2017/12/15 Javascript
使用Vuex实现一个笔记应用的方法
2018/03/13 Javascript
VUE 实现滚动监听 导航栏置顶的方法
2018/09/11 Javascript
JS基于Location实现访问Url、重定向及刷新页面的方法分析
2018/12/03 Javascript
Vue函数式组件-你值得拥有
2019/05/09 Javascript
vue中touch和click共存的解决方式
2020/07/28 Javascript
[43:58]DOTA2上海特级锦标赛C组败者赛 Newbee VS Archon第二局
2016/02/27 DOTA
python通过字典dict判断指定键值是否存在的方法
2015/03/21 Python
浅谈Python对内存的使用(深浅拷贝)
2018/01/17 Python
python使用scrapy发送post请求的坑
2018/09/04 Python
对Python Class之间函数的调用关系详解
2019/01/23 Python
django使用xadmin的全局配置详解
2019/11/15 Python
python中Lambda表达式详解
2019/11/20 Python
Python制作数据预测集成工具(值得收藏)
2020/08/21 Python
印尼旅游网站:via
2017/11/12 全球购物
德国W家官网,可直邮中国的母婴商城:Windeln.de
2021/03/03 全球购物
EJB3.1都有哪些改进
2012/11/17 面试题
历史学专业毕业生求职信
2013/09/27 职场文书
师范生自我鉴定
2014/03/20 职场文书
2014年大学生党员评议表自我评价
2014/09/20 职场文书
2014年公务员转正工作总结
2014/11/07 职场文书
乡镇司法所2015年度工作总结
2015/10/14 职场文书
matplotlib如何设置坐标轴刻度的个数及标签的方法总结
2021/06/11 Python