WSDL use suds
在 Python 的函式庫裡, suds 算是通用的選擇,一直用起來也算蠻穩定的
不過在一些比較特別的網路環境裡,或是需要參照其他 XMLSchema 的時候
我比較沒有經驗,所以紀錄一下,這一個環境機器連結外部 80 port 的服務要透過 proxy
proxy_config = {‘http’: ‘http://someproxy.host:3128’}
from suds.xsd.doctor import Import, ImportDoctor
from suds.client import Client
wsdl_url = ‘http://somewebservice.com/service.asmx?WSDL'
imp = Import(‘http://www.w3.org/2001/XMLSchema', location=‘http://www.w3.org/2001/XMLSchema.xsd')
imp.filter.add(‘http://tempuri.org/')
client = Client(wsdl_url, doctor=ImportDoctor(imp), proxy=proxy_config)
print client # read avaliable api ;-)
參考資料
http://stackoverflow.com/questions/5769128/soap-client-using-suds