Python调用WebService接口

刚接触一个工作项目,需要用python调用java开发的第三方WebService接口。

导入模块

python使用suds模块来调用WebService接口进行开发

from suds.client import Client       #导入suds客户端模块

调用接口

url = 'http://x.x.x.x:xxxx/xxxx?wdsl'     #获取第三方接口URL,结尾要加上?wsdl,可以直接在浏览器中访问
c = Client(url=url)       #实例化Client并传入url
print c
#print c  返回结果,主要包含该接口的使用方法和类型Service ( userService ) tns="http://x.x.x.x.x/"      #结果隐藏Prefixes (2)ns0 = ".x.x.x.x"    #结果隐藏ns2 = "http://.x.x.x.x/"    #结果隐藏Ports (1):(...)Methods (11):#显示方法名称,由于项目隐私,结果隐藏#可以直接用过Client.Service来调用这里面的方法Types (24):#类型

调用接口方法

result = c.service.方法名(*args)   #可根据实际情况传递参数

调用接口报错

No handlers could be found for logger "suds.client"
Traceback (most recent call last):File "C:\Users\Administrator\Desktop\project\smp\add_wifi_whitelist.py", line 28, in <module>result = c.service.queryUsers()File "F:\Python27\lib\site-packages\suds\client.py", line 542, in __call__return client.invoke(args, kwargs)File "F:\Python27\lib\site-packages\suds\client.py", line 602, in invokeresult = self.send(soapenv)File "F:\Python27\lib\site-packages\suds\client.py", line 649, in sendresult = self.failed(binding, e)File "F:\Python27\lib\site-packages\suds\client.py", line 702, in failedr, p = binding.get_fault(reply)File "F:\Python27\lib\site-packages\suds\bindings\binding.py", line 265, in get_faultraise WebFault(p, faultroot)
suds.WebFault: Server raised fault: 'An error was discovered processing the <wsse:Security> header'

这里报错原因主要是由于在CXF服务端加入了Security安全信息,所以在Soap头部需要写入Security认证信息

导入suds认证模块wsse

from suds.wsse import *

配置认证信息

security = Security()
token = UsernameToken(username, password)
security.tokens.append(token)
c.set_options(wsse=security)

其他需要身份认证的调用

from suds.transport.http import HttpAuthenticated# 1.
client = Client(url=wsdl_url, username=username, password=password)# 2.
t = HttpAuthenticated(username=username, password=password)
client = Client(url=url, transport=t)

Python调用WebService接口相关推荐

  1. python调用webservice接口实例_python调用各种接口,webservice,c接口,com接口,socket协议方法...

    python调用webservice接口(SOAP) (2)调用示例: 需要先安装suds库:pip install suds from suds.client import Client #如果需要 ...

  2. Python 调用WebService接口出错-suds.transport.TransportError: HTTP Error 401: Unauthori

    使用Python调用WebService接口出现"suds.transport.TransportError: HTTP Error 401: Unauthorized"错误. 问 ...

  3. python调用webservice接口实例_python调用webservice接口的实现

    使用suds这个第三方模块 from suds.client import Client url = 'http://ip:port/?wsdl' cilent=Client(url) print c ...

  4. python调用webservice接口实例_python发布webservice接口

    cd soaplib python setup.py install 2.服务端代码 import soaplib from soaplib.core.service import rpc, Defi ...

  5. python suds_python使用suds调用webservice接口的方法

    最近做接口对接,遇到了.net开发的webservice接口,因为python第一次与webservice对接,连问带查,最后使用suds库来实现了 1.安装suds mac: sudo pip in ...

  6. EJBCA 6 通过调用WebService接口增加用户并获取证书

    2019独角兽企业重金招聘Python工程师标准>>> 今天终于搞定通过调用WebService 接口的方式在EJBCA 中增加用户. 本项目完整代码请参见http://git.os ...

  7. python调用webservice

    python调用webservice的两种方法 suds调用 requests调用 因为工作关系,长期对接各种三方的接口(视图,webservice,队列).期间遇见了各种报错,也查阅了许多资料,特此 ...

  8. Python调用WebService服务 查询天气预报

    文章目录 问题描述 安装 初试 修复Schema 天气预报封装 参考文献 问题描述 Python调用Webservice服务,如WebXml的免费Web服务中的城市天气预报 安装 使用suds库的分支 ...

  9. 调用webservice接口,数据不回滚问题

    调用webservice接口,数据不回滚问题 使用cxf+spring框架开发webservice接口,在开发一个具有保存数据的接口功能时,如果数据发生了异常,对service层无论使用了xml配置声 ...

  10. android调用web接口,Android调用webservice 接口

    以查询手机号码归属地的Web service为例,它的wsdl为 1 在Android项目中导入??Ksoap2-android jar第三方jar包?? 2 Activity代码 public cl ...

最新文章

  1. 基于 Bootstrap 的响应式后台管理面板
  2. 【汇编语言】程序设计过程,如何避免数据类型匹配错误?
  3. CYQ.Data 轻量数据层之路 应用示例一 留言版(四)
  4. 梦幻群侠传5帮派修炼_梦幻封妖传5门派技能介绍 | 手游网游页游攻略大全
  5. 如何在 OpenResty 中使用 websocket
  6. 结构体与对象的联系与区别
  7. python实现类似于visio_类似visio的软件有哪些?
  8. dll和so文件区别与构成
  9. win7计算机所有软件无法运行程序,解决Win7应用程序无法启动的方法
  10. 今日头条小程序是什么
  11. java 自然对数的底数_Java求自然对数底e的值
  12. STM32: startup_**.s、Core_cm3.c、宏定义、HAL库
  13. 九 iOS之 图片剪裁
  14. 收藏的有用博客及源码地址
  15. 【Unity3D】Unity 组件 ④ ( 摄像机 | 调整摄像机 | 手工调整 | 3D 视图对齐 Align with View 调整摄像机 )
  16. 电脑关机蓝屏,然后自动重启的问题解决。
  17. 【转】lonekight@xmu·ACM/ICPC 回忆录
  18. position属性的absolute和relative的理解
  19. 机器学习(六)分类模型--线性判别法、距离判别法、贝叶斯分类器
  20. React 技术栈在蚂蚁金服的实践

热门文章

  1. python为什么被称为胶水语言_为什么说python是胶水语言
  2. 【Oracle】执行计划详解
  3. MS17010漏洞利用姿势
  4. Python:科赫曲线绘制雪花
  5. android vlc m3u8,Exoplayer播放m3u8文件Android
  6. OA与EHR系统集成方案
  7. win10录屏_截屏、录屏这种小事,Win10自带功能比微信QQ强 N 倍!
  8. 程序员自学能学会吗?我是自学的,努力比天分重要
  9. 收费最低的云存储_柠檬云财税|柠檬云财务软件 V4.2.1电脑版下载
  10. 淘宝天猫自动领券优惠券淘口令方法和工具