python suds訪問webserviceサービス実現
2003 ワード
sudsをインストール
Python 3の環境で使用する場合:pip install sudsは、ImportError:No module named clientを報告するはずです。ここでsuds-py 3のインストールを推奨します。
使用
1.あらゆる方法を取得する
webserviceでの方法は、httpでのget、postと似ています。
2.呼び出し方法
まずパラメータなしの方法を呼び出します。
ここではパラメータの種類に注意してください。たとえばXMLのdateTimeタイプは、直接pythonのdatetimeタイプに入ることができません。エラーが発生します。ここでsudsのDateTimeで変換してください。具体的なコードは以下の通りです。
他の方法、例えば:
ここで、python sudsのwebservice訪問に関する記事を紹介します。python sudsのwebserviceサービス内容については、以前の記事を検索したり、下記の関連記事を見たりしてください。これからもよろしくお願いします。
Python 3の環境で使用する場合:pip install sudsは、ImportError:No module named clientを報告するはずです。ここでsuds-py 3のインストールを推奨します。
使用
1.あらゆる方法を取得する
webserviceでの方法は、httpでのget、postと似ています。
from suds.client import Client
url = 'http://******************?wsdl' # wsdl
client = Client(url)
print(client) #
戻ってきたMethodsで定義された方法は、要求されるパラメータとパラメータの種類を含む。2.呼び出し方法
まずパラメータなしの方法を呼び出します。
from suds.client import Client
url = 'http://************************?wsdl' # wsdl
client = Client(url)
response = client.service.getRealtimeDataList() # , realtimeVo
for i in response:
# Client dict , realtimeVo dict
print(Client.dict(i))
着信パラメータが必要な方法を呼び出した場合、対応する方法で直接に順番に入力すればいいです。ここではパラメータの種類に注意してください。たとえばXMLのdateTimeタイプは、直接pythonのdatetimeタイプに入ることができません。エラーが発生します。ここでsudsのDateTimeで変換してください。具体的なコードは以下の通りです。
from suds.client import Client
from suds.sax.date import DateTime
from datetime import datetime, timedelta
url = 'http://***************************?wsdl' # wsdl
client = Client(url)
now = datetime.now() - timedelta(days=1)
yesterday = now.strftime("%Y-%m-%d 00:00:00") #
date_time = DateTime(yesterday) # DateTime datetime ,
response = client.service.getHistoryDataList(date_time, date_time, "address", "corpCode") # , realtimeVo
for i in response:
# Client dict , realtimeVo dict
print(Client.dict(i))
3.その他他の方法、例えば:
client.set_options() #
今は使ったことがありません。ここで、python sudsのwebservice訪問に関する記事を紹介します。python sudsのwebserviceサービス内容については、以前の記事を検索したり、下記の関連記事を見たりしてください。これからもよろしくお願いします。