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读文件逐行处理的示例代码分享
Dec 27 Python
对于Python的框架中一些会话程序的管理
Apr 20 Python
Python MySQL数据库连接池组件pymysqlpool详解
Jul 07 Python
Python实现的IP端口扫描工具类示例
Feb 15 Python
python使用wxpy实现微信消息防撤回脚本
Apr 29 Python
Python 通过微信控制实现app定位发送到个人服务器再转发微信服务器接收位置信息
Aug 05 Python
Pytorch转keras的有效方法,以FlowNet为例讲解
May 26 Python
python实现mean-shift聚类算法
Jun 10 Python
python和php哪个更适合写爬虫
Jun 22 Python
Python爬虫如何应对Cloudflare邮箱加密
Jun 24 Python
如何用python反转图片,视频
Apr 24 Python
Python docx库删除复制paragraph及行高设置图片插入示例
Jul 23 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守护另一个php进程的例子
2015/02/13 PHP
php中 ob_start等函数截取标准输出的方法
2015/06/22 PHP
Centos6.5和Centos7 php环境搭建方法
2016/05/27 PHP
详解如何在云服务器上部署Laravel
2017/06/30 PHP
JS实现金额转换(将输入的阿拉伯数字)转换成中文的实现代码
2013/09/30 Javascript
了不起的node.js读书笔记之node的学习总结
2014/12/22 Javascript
JavaScript中的null和undefined区别介绍
2015/01/01 Javascript
JS获取时间的方法
2015/01/21 Javascript
如何根据百度地图计算出两地之间的驾驶距离(两种语言js和C#)
2015/10/29 Javascript
跨域资源共享 CORS 详解
2016/04/26 Javascript
window.open打开窗口被拦截的快速解决方法
2016/08/04 Javascript
浅谈Angular的$q, defer, promise
2016/12/20 Javascript
基于AngularJS的简单使用详解
2017/09/10 Javascript
浅谈Node.js爬虫之网页请求模块
2018/01/11 Javascript
JavaScript面向对象程序设计创建对象的方法分析
2018/08/13 Javascript
利用Angular7开发一个Radio组件的全过程
2019/07/11 Javascript
vue输入节流,避免实时请求接口的实例代码
2019/10/30 Javascript
原生JavaScript实现五子棋游戏
2020/11/09 Javascript
使用cx_freeze把python打包exe示例
2014/01/24 Python
在pycharm中python切换解释器失败的解决方法
2018/10/29 Python
python DataFrame转dict字典过程详解
2019/12/26 Python
解决django中form表单设置action后无法回到原页面的问题
2020/03/13 Python
在keras下实现多个模型的融合方式
2020/05/23 Python
详解Flask前后端分离项目案例
2020/07/24 Python
Python try except finally资源回收的实现
2021/01/25 Python
德国汽车零件和汽车配件网上商店:kfzteile24
2018/11/14 全球购物
部队领导证婚词
2014/01/12 职场文书
倡议书格式范文
2014/04/14 职场文书
行政专员岗位职责说明书
2014/07/30 职场文书
新员工考核评语
2014/12/31 职场文书
给客户的感谢信
2015/01/21 职场文书
政府会议通知范文
2015/04/15 职场文书
老乡会致辞
2015/07/28 职场文书
Jsonp劫持学习
2021/04/01 PHP
js中Object.create实例用法详解
2021/10/05 Javascript
使用CSS实现小三角边框原理解析
2021/11/07 HTML / CSS