これまで SOAP を扱ったことがなかったので、このチュートリアルに従って、オランダ政府の土地登記簿 (kadaster.nl) の SOAP サービスについて調べようとしています。
>>> from SOAPpy import WSDL
>>> server = WSDL.Proxy('http://www1.kadaster.nl/1/schemas/kik-inzage/20141101/verzoekTotInformatie-2.1.wsdl')
/Library/Python/2.7/site-packages/wstools/XMLSchema.py:1280: UserWarning: annotation is ignored
warnings.warn('annotation is ignored')
/Library/Python/2.7/site-packages/wstools/XMLSchema.py:1217: UserWarning: Not keeping schema component.
warnings.warn("Not keeping schema component.")
>>> server.methods.keys()
[u'VerzoekTotInformatie']
>>> callInfo = server.methods['VerzoekTotInformatie']
>>> callInfo.inparams[0].name
u'body'
>>> callInfo.inparams[0].type
(u'http://www.kadaster.nl/schemas/kik-inzage/20141101', u'VerzoekTotInformatieRequest')
VerzoekTotInformatie
したがって、 type のメッセージでメソッド (RequestForInformation として変換) を呼び出す必要があることがわかりましたVerzoekTotInformatieRequest
。
しかし、ここから私はちょっと迷っています。どうすればそのようなものを構築できVerzoekTotInformatieRequest
ますか? これをさらに内省するにはどうすればよいVerzoekTotInformatieRequest
ですか?
ここから先に進む方法についてのヒントは大歓迎です。
ps。別のライブラリを使用する必要がある場合 (ただし、Python の方が好きです)、それも問題ありません。私はsudsについて良いことを読みましたが、それは3 年以上コミットされていなかったので、放棄されたと考えました。pysimplesoap も試してみましたが、これは良さそうですが、それを使用して SOAP サービスをイントロスペクトする方法がわかりませんでした。