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中的应用之translate和maketrans用法详解
Aug 27 Python
深入讲解Python中面向对象编程的相关知识
May 25 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
Aug 05 Python
Scrapy爬虫实例讲解_校花网
Oct 23 Python
Python3.x爬虫下载网页图片的实例讲解
May 22 Python
Python使用爬虫爬取静态网页图片的方法详解
Jun 05 Python
pyspark.sql.DataFrame与pandas.DataFrame之间的相互转换实例
Aug 02 Python
对pandas将dataframe中某列按照条件赋值的实例讲解
Nov 29 Python
对python操作kafka写入json数据的简单demo分享
Dec 27 Python
Python骚操作之动态定义函数
Mar 26 Python
python+selenium+Chrome options参数的使用
Mar 18 Python
pytorch常用数据类型所占字节数对照表一览
May 17 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/05/13 PHP
PDO::rollBack讲解
2019/01/29 PHP
jQuery ajax+PHP实现的级联下拉列表框功能示例
2019/02/12 PHP
PHP实现微信公众号验证Token的示例代码
2019/12/16 PHP
JavaScript 拾碎[三] 使用className属性
2010/10/16 Javascript
用js判断页面刷新或关闭的方法(onbeforeunload与onunload事件)
2012/06/22 Javascript
js自定义方法通过隐藏iframe实现文件下载
2013/02/21 Javascript
JS取文本框中最小值的简单实例
2013/11/29 Javascript
使用原生js实现页面蒙灰(mask)效果示例代码
2014/06/20 Javascript
理解js对象继承的N种模式
2016/01/25 Javascript
原生js实现ajax方法(超简单)
2016/09/20 Javascript
JavaScript事件用法浅析
2016/10/31 Javascript
js实现轮播图的两种方式(构造函数、面向对象)
2017/09/30 Javascript
jquery ajax异步提交表单数据的方法
2017/10/27 jQuery
jQuery实现B2B网站后台管理系统侧导航
2020/07/08 jQuery
js实现简单的随机点名器
2020/09/17 Javascript
vue组件是如何解析及渲染的?
2021/01/13 Vue.js
[51:52]Liquid vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.24
2019/09/10 DOTA
浅谈Python程序与C++程序的联合使用
2015/04/07 Python
Flask框架的学习指南之开发环境搭建
2016/11/20 Python
python 定时修改数据库的示例代码
2018/04/08 Python
PyQT实现多窗口切换
2018/04/20 Python
Python开发网站目录扫描器的实现
2019/02/21 Python
Tkinter中复选菜单是否被选中的判断与设置方式
2020/03/04 Python
Python3+selenium实现cookie免密登录的示例代码
2020/03/18 Python
CSS3制作炫酷的自定义发光文字
2016/03/28 HTML / CSS
CSS3,线性渐变(linear-gradient)的使用总结
2017/01/09 HTML / CSS
css3 pointer-events 介绍详解
2017/09/18 HTML / CSS
Rakuten Kobo台湾:电子书、eReaders和Reading应用程式
2017/11/24 全球购物
《胖乎乎的小手》教学反思
2014/02/26 职场文书
商务经理岗位职责
2014/07/30 职场文书
社区国庆节活动总结
2015/03/23 职场文书
超市收银员岗位职责
2015/04/07 职场文书
女性健康知识讲座通知
2015/04/23 职场文书
在redisCluster中模糊获取key方式
2021/07/09 Redis
MySQL创建定时任务
2022/01/22 MySQL