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实现的一个自动售饮料程序代码分享
Aug 25 Python
用Python编写简单的微博爬虫
Mar 04 Python
浅谈对yield的初步理解
May 29 Python
Django异步任务之Celery的基本使用
Mar 23 Python
django celery redis使用具体实践
Apr 08 Python
django框架基于模板 生成 excel(xls) 文件操作示例
Jun 19 Python
微信公众号token验证失败解决方案
Jul 22 Python
python实现tail -f 功能
Jan 17 Python
windows python3安装Jupyter Notebooks教程
Apr 13 Python
python实现音乐播放和下载小程序功能
Apr 26 Python
python爬虫实现POST request payload形式的请求
Apr 30 Python
Python爬虫之Selenium实现键盘事件
Dec 04 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
全国FM电台频率大全 - 23 四川省
2020/03/11 无线电
PHP 存取 MySQL 数据库的一个例子
2006/10/09 PHP
PHP chmod 函数与批量修改文件目录权限
2010/05/10 PHP
php静态文件返回304技巧分享
2015/01/06 PHP
Apache启动报错No space left on device: AH00023该怎么解决
2015/10/16 PHP
php 浮点数比较方法详解
2017/05/05 PHP
PHP实现的防止跨站和xss攻击代码【来自阿里云】
2018/01/29 PHP
javascript面向对象包装类Class封装类库剖析
2013/01/24 Javascript
JS注释所产生的bug 即使注释也会执行
2013/11/19 Javascript
js键盘事件的keyCode
2014/07/29 Javascript
JS实现适合于后台使用的动画折叠菜单效果
2015/09/21 Javascript
jquery ztree实现模糊搜索功能
2016/02/25 Javascript
canvas实现钟表效果
2017/02/13 Javascript
详解JavaScript按概率随机生成事件
2017/08/02 Javascript
实时监控input框,实现输入框与下拉框联动的实例
2018/01/23 Javascript
React 实现拖拽功能的示例代码
2019/01/06 Javascript
JavaScript Math对象和调试程序的方法分析
2019/05/13 Javascript
JavaScript图像放大镜效果实现方法详解
2020/06/28 Javascript
JS事件循环机制event loop宏任务微任务原理解析
2020/08/04 Javascript
VUE : vue-cli中去掉路由中的井号#操作
2020/09/04 Javascript
numpy使用fromstring创建矩阵的实例
2018/06/15 Python
Python爬虫设置代理IP(图文)
2018/12/23 Python
python 实现创建文件夹和创建日志文件的方法
2019/07/07 Python
Django项目后台不挂断运行的方法
2019/08/31 Python
Django Form and ModelForm的区别与使用
2019/12/06 Python
tensorflow实现二维平面模拟三维数据教程
2020/02/11 Python
基于Numba提高python运行效率过程解析
2020/03/02 Python
美国滑雪板和装备购物网站:Skis.com
2018/12/20 全球购物
营销人才自我鉴定范文
2013/12/25 职场文书
大学生全国两会报告感想
2014/03/17 职场文书
幼儿园的门卫岗位职责
2014/04/10 职场文书
超越自我演讲稿
2014/05/21 职场文书
电力工程合作意向书
2015/05/11 职场文书
交流会主持词
2015/07/02 职场文书
优质服务心得体会(共4篇)
2016/01/22 职场文书
ubuntu安装jupyter并设置远程访问的实现
2022/03/31 Python