Python3 webservice接口测试代码详解
作者:vevian 发布时间:2022-10-21 18:54:51
标签:python,web,service,接口,测试
一、使用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)
来源:https://www.cnblogs.com/vevian/p/11518943.html


猜你喜欢
- 前言索引和切片是NumPy中最重要最常用的操作。熟练使用NumPy切片操作是数据处理和机器学习的前提,所以一定要掌握好。参考NumPy官方文
- 最近项目中用到celery很多,Django快速接入celery,这里给份教程。准备pip安装celery、flower、eventlet快
- 在网站开发过程中,经常会遇到这样的需求:用户登陆系统才可以访问某些页面,如果用户没有登陆而直接访问就会跳转到登陆界面。要实现这样的需求其实很
- 目录Python的安装VS Code配置Hello World测试调用Python函数string.split()第一次尝试第二次尝试第三次
- 之前项目有一个需求,业务人员使用中文编写一些自定义公式,然后需要我们后台执行将结果返回到界面上,于是就基于有限状态机写了这个词法分析器,比较
- 先来看一个老掉牙的故事:福特说,我在设计汽车之前,到处去问人们“需要一个什么样的更好的交通工具?”,几乎所有人的答案都是 ── 一匹“更快的
- 前言jsonpath是一个可以在复杂的json数据中根据用户指定的规则找到特定数据的库。本文利用jsonpath对接口进行封装,旨在写一个对
- 一、首先我们来填个坑支付验签失败这个问题折磨了我两天,官方文档比较含糊不清。各种百度下来的方法试过之后也不尽人意,最后发现问题是没有二次签名
- 理解 CPU 工作原理,重要的是理解 pc 不停地自增地址,顺序执行程序指令。当遇到跳转指令时,会将 pc 重置为新地址。在顺序执行程序指令
- 目录创建文件夹布局编写命令代码实际应用场景案例1:检查数据库连接是否已就绪案例2:周期性发送邮件每次在启动Django服务之前,我们都会在终
- 一、问题描述 SQL Plus WorkSheet是一个窗口图形界面的SQL语句编辑器,对于那些喜欢窗口界面而不喜欢字符界面的用户,该工具相
- 在当今用户的显示器越来越大的今天,之前的1024*768固宽布局有点越来越不合时宜,对大屏幕的用户而言,两侧空空的留白给人第一眼的印象是严重
- select查询语句是不会加锁的,但是select .......for update除了有查询的作用外,还会加锁呢,而且它是悲观
- 先设定一个关系模型如下:from django.db import modelsclass Blog(models.Model): name
- G2 是蚂蚁金服开源一个基于图形语法,面向数据分析的统计图表引擎。G2Plot 是在 G2 基础上,屏蔽复杂概念的前提下,保留 G2 强大图
- 如下所示:# u [32,30,200]# u_logits [400,32,30]q_j_400 = [] for j in range(
- Mysql字段为null的加减乘除运算数据库表test_table如下查询:select id,total,used,(total - us
- 本人已经在运维行业工作了将近十年,我最早接触Linux是在大二的样子,那时候只追求易懂,所以就选择了Ubuntu作为学习、使用的对象,它简单
- 常用的标准库序列化模块import pickle序列化和反序列化把不能直接存储的数据变得可存储,这个过程叫做序列化。把文件中的数据拿出来,回
- 一、CSRF:保护机制Django预防CSRF攻击的方法是在用户提交的表单中加入一个csrftoken的隐含值,这个值和服务器中保存的csr