栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python请求webservice接口记录

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python请求webservice接口记录

本文仅记录Python调用webservice使用

Python调用webservice接口要使用suds包,直接使用pip 命令安装即可

pip install suds

以下是开发过程

先使用Python脚本查看webservice接口提供的方法

下面这段代码完全是抄袭网上的文章

from suds.client import Client
import json

url = 'http://xxx.xxx.xxx.xxx:port/PWebSvr.dll/wsdl/IWebSvrJK'
client = Client(url)
print(client)

执行上述命令会显示以下内容

Suds ( https://fedorahosted.org/suds/ )  version: 0.6

Service ( IWebSvrJKservice ) tns="http://tempuri.org/"
   Prefixes (0)
   Ports (1):
      (IWebSvrJKPort)
         Methods (3):
            GetInterFaceInfo()
            GetQueryInfoJSON(xs:string INJSONStr)
            GetXMLTextTest(xs:string InXml)
         Types (0):

其中的Methods提示有三种方法: GetInterFaceInfoGetQueryInfoJSONGetXMLTextTest
方法名后面的括号里应该就是方法入参

查看接口文档,了解接口入参

通过对接方提供的技术文档,了解请求接口的入参内容

{
	"QueryData": {
		"SHEDID": "0",
		"SysGuid": "XXXX--XXXXX-XXXX-XXXX",
		"RouteName": "QReal_Data",
		"Args": {
			"PageIndex": "1"
		}
	}
}

在技术文档中,上述参数以字典dict的形式存在,但是直接传参字典会报错
suds.TypeNotFound: Type not found: 'QueryData'
遂想到把字典转换成字符串

import json
input_param = json.dumps(dict_param)
result=client.service.GetQueryInfoJSON(input_param)
print(result)

执行测试,成功。
如此看来,方法GetQueryInfoJSON(xs:string INJSONStr) 后面括号里的内容已经提示入参的类型是string,格式是JSON。
完毕。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/674869.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号