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 文件读写操作实例详解
Mar 12 Python
Python实现的端口扫描功能示例
Apr 08 Python
python 将数据保存为excel的xls格式(实例讲解)
May 03 Python
python 执行shell命令并将结果保存的实例
May 11 Python
Python解析命令行读取参数之argparse模块
Jul 26 Python
Python脚本实现监听服务器的思路代码详解
May 28 Python
怎么快速自学python
Jun 22 Python
python七种方法判断字符串是否包含子串
Aug 18 Python
Python制作一个仿QQ办公版的图形登录界面
Sep 22 Python
Django项目配置Memcached和Redis, 缓存选择哪个更有优势
Apr 06 Python
Python基础之函数嵌套知识总结
May 23 Python
python调试工具Birdseye的使用教程
May 25 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实现购物车功能(下)
2016/01/05 PHP
再谈PHP中单双引号的区别详解
2016/06/12 PHP
php获取当前月与上个月月初及月末时间戳的方法
2016/12/05 PHP
js jquery做的图片连续滚动代码
2008/01/06 Javascript
jquery 3D 标签云示例代码
2014/06/12 Javascript
本人自用的global.js库源码分享
2015/02/28 Javascript
快速解决Canvas.toDataURL 图片跨域的问题
2016/05/10 Javascript
AngularJS入门教程之过滤器用法示例
2016/11/02 Javascript
Vue2.0实现调用摄像头进行拍照功能 exif.js实现图片上传功能
2018/04/28 Javascript
JavaScript实现构造json数组的方法分析
2018/08/17 Javascript
vue3.0 CLI - 2.6 - 组件的复用入门教程
2018/09/14 Javascript
详解如何在Vue项目中导出Excel
2019/04/19 Javascript
了解重排与重绘
2019/05/29 Javascript
JS中getElementsByClassName与classList兼容性问题解决方案分析
2019/08/07 Javascript
js+css3实现炫酷时钟
2020/08/18 Javascript
Vue-cli打包后如何本地查看的操作
2020/09/02 Javascript
python 参数列表中的self 显式不等于冗余
2008/12/01 Python
Python通过websocket与js客户端通信示例分析
2014/06/25 Python
Python做简单的字符串匹配详解
2017/03/21 Python
Python入门_浅谈for循环、while循环
2017/05/16 Python
CentOS 6.5下安装Python 3.5.2(与Python2并存)
2017/06/05 Python
Python 正则表达式 re.match/re.search/re.sub的使用解析
2019/07/22 Python
Numpy的简单用法小结
2019/08/28 Python
window7下的python2.7版本和python3.5版本的opencv-python安装过程
2019/10/24 Python
python基于opencv实现人脸识别
2021/01/04 Python
类和结构的区别
2012/08/15 面试题
资产经营总监岗位职责范文
2013/12/01 职场文书
服务口号大全
2014/06/11 职场文书
2014年实习生工作总结
2014/11/27 职场文书
学校拾金不昧表扬信
2015/01/16 职场文书
2016大学先进团支部事迹材料
2016/03/01 职场文书
python 机器学习的标准化、归一化、正则化、离散化和白化
2021/04/16 Python
MySQL查看表和清空表的常用命令总结
2021/05/26 MySQL
解决MultipartFile.transferTo(dest) 报FileNotFoundExcep的问题
2021/07/01 Java/Android
PostgreSQL事务回卷实战案例详析
2022/03/25 PostgreSQL
Nginx 502 bad gateway错误解决的九种方案及原因
2022/08/14 Servers