python調(diào)用webservice接口的實(shí)現(xiàn)
使用suds這個(gè)第三方模塊
from suds.client import Client url = 'http://ip:port/?wsdl' cilent=Client(url) print cilent
查看webservice接口的具體信息:
調(diào)用接口方法,通常 client.service.methodname
實(shí)際測(cè)試過(guò)程中遇到的坑:
1、tns 值為L(zhǎng)ocalhost
之前查看接口信息時(shí),未發(fā)現(xiàn)tns="http://Localhost:4567/Interface.wsdl",這個(gè)被設(shè)置成Localhost,導(dǎo)致通過(guò)接口調(diào)用時(shí),只能在webservice接口本地服務(wù)器上才能調(diào)用成功,其他服務(wù)器調(diào)用時(shí),接口中的方法都無(wú)法獲取。大坑!
解決方法:修改webservice接口對(duì)應(yīng)的wsdl文件 Interface.wsdl,將其中的Localhost改成具體ip即可。
2、接口方法名不符合python命名規(guī)范
比如上述的方法,無(wú)法直接這樣調(diào)用
解決辦法:python內(nèi)置函數(shù)getattr 。 getattr(cilent.service,'ser-GetAreaID')('1')
3、接口方法傳參
此方法為例
1、方法一:
soap_rep=getattr(soapService, 'ser-SetValue')(nSetFlag=1,nSystemID=1,nRecordNo=440002028,nTableNo=18,cValue='225',UserName='admin')
2、方法二:
soap_rep=getattr(soapService, 'ser-SetValue')(1,1,440002028,18,'225','admin') # 需要一一對(duì)應(yīng)
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
下載與當(dāng)前Chrome對(duì)應(yīng)的chromedriver.exe(用于python+selenium)
這篇文章主要介紹了下載與當(dāng)前Chrome對(duì)應(yīng)的chromedriver.exe(用于python+selenium),本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01python Requsets下載開源網(wǎng)站的代碼(帶索引 數(shù)據(jù))
這篇文章主要介紹了python Requsets下載開源網(wǎng)站的代碼(帶索引 數(shù)據(jù)),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04對(duì)python 矩陣轉(zhuǎn)置transpose的實(shí)例講解
下面小編就為大家分享一篇對(duì)python 矩陣轉(zhuǎn)置transpose的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-04-04Python實(shí)現(xiàn)利用最大公約數(shù)求三個(gè)正整數(shù)的最小公倍數(shù)示例
這篇文章主要介紹了Python實(shí)現(xiàn)利用最大公約數(shù)求三個(gè)正整數(shù)的最小公倍數(shù),涉及Python數(shù)學(xué)運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2017-09-09python中kmeans聚類實(shí)現(xiàn)代碼
這篇文章主要為大家詳細(xì)介紹了python中kmeans聚類的實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02Python函數(shù)any()和all()的用法及區(qū)別介紹
any函數(shù):any(x),只要x中有一個(gè)不為空,0,false就返回True,否則返回False。all(x)函數(shù)必須x中的所有元素均不為空,0,false才會(huì)返回True,否則返回False。接下來(lái)通過(guò)本文給大家介紹Python函數(shù)any()和all()的用法及區(qū)別介紹,需要的朋友參考下吧2018-09-09Python閉包之返回函數(shù)的函數(shù)用法示例
這篇文章主要介紹了 Python閉包之返回函數(shù)的函數(shù)用法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-01-01