温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python中怎么使用suds调用webservice

发布时间:2021-06-24 17:09:27 来源:亿速云 阅读:178 作者:Leah 栏目:开发技术

本篇文章给大家分享的是有关python中怎么使用suds调用webservice,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

  1. from suds.client import Client  

  2. url = 'http://localhost:7080/webservices/WebServiceTestBean?wsdl'

  3. client = Client(url)  


  4. #查看该service提供的方法

  5. print client  


  6. Suds - version: 0.3.3 build: (beta) R397-20081121


  7. Service (WebServiceTestBeanService) tns="http://test.server.enterprise.rhq.org/"

  8.    Prefixes (1):  

  9.      ns0 = "http://test.server.enterprise.rhq.org/"

  10.    Ports (1):  

  11.      (Soap)  

  12.        Methods:  

  13.          addPerson(Person person, )  

  14.          echo(xs:string arg0, )  

  15.          getList(xs:string str, xs:int length, )  

  16.          getPercentBodyFat(xs:string name, xs:int height, xs:int weight)  

  17.          getPersonByName(Name name, )  

  18.          hello()  

  19.          testExceptions()  

  20.          testListArg(xs:string[] list, )  

  21.          testVoid()  

  22.          updatePerson(AnotherPerson person, name name, )  

  23.    Types (23):  

  24.      Person  

  25.      Name  

  26.      Phone  

  27.      AnotherPerson  

   1.简单参数调用

Python代码  python中怎么使用suds调用webservice

  1. result = client.service.getPercentBodyFat('jeff'68170)  

  2. print result  


  3. result = client.service.getPercentBodyFat(name='jeff', height=68, weight=170)  

  4. print result  


  5. #词典

  6. d = dict(name='jeff', height=68, weight=170)  

  7. result = client.service.getPercentBodyFat(**d)  

  8. print result  


  9. You have 21% body fat.  

   2.复杂参数

Java代码  python中怎么使用suds调用webservice

  1. person = client.factory.create('Person')  

  2. print person  

Java代码  python中怎么使用suds调用webservice

  1. (Person)=  

  2.   {  

  3.     phone = []  

  4.     age = NONE  

  5.     name(Name) =   

  6.         {  

  7.             last = NONE  

  8.             first = NONE  

  9.         }  

  10.    }  

 #设置变量

Java代码  python中怎么使用suds调用webservice

  1. phone = client.factory.create('Phone')  

  2. phone.npa = 202

  3. phone.nxx = 555

  4. phone.number = 1212

Python代码  python中怎么使用suds调用webservice

  1. name = client.factory.create('Name')  

  2. name.first = 'Elmer'

  3. name.last = 'Fudd'

Python代码  python中怎么使用suds调用webservice

  1. person.name = name  

  2. person.age = 35

  3. person.phone = [phone]  


  4. #或者

  5. person.phone.append(phone)  

  1. try:  

  2.    person_added = client.service.addPerson(person)  

  3. except WebFault, e:  

  4.   print e  

  在0.3.8以上版本还提供了更简单的调用方式,完美的jsonpython中怎么使用suds调用webservice

  1. person = {}  

  2. #根据对象结构构造json


  3. phone = {  

  4.     'npa':202,  

  5.     'nxx':555,  

  6.     'number':1212,  

  7. }  


  8. name = {  

  9.     'first':'Elmer',  

  10.     'last':'Fudd'

  11. }  


  12. person['name'] = name  

  13. person['age'] = 35

  14. person['phone'] = [phone,]  


  15. try:  

  16.    person_added = client.service.addPerson(person)  

  17. except WebFault, e:  

  18.   print e  

 3.异常处理

  1. client = client(url, faults=False)  

  2. result = client.service.addPerson(person)  

  3. print result  

  4. 200, person ...)  

以上就是python中怎么使用suds调用webservice,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI