Явная генерация кода из файла WSDL для автозаполнения? - PullRequest
3 голосов
/ 22 июня 2011

Я использую библиотеку suds в качестве SOAP-клиента в каком-то проекте. Я хотел бы знать, был ли способ генерировать код Python в соответствии с файлом WSDL.

Например, рассмотрим следующую строку из файла WSDL:

<operation name="GetLastTradePrice">

Затем я хочу добавить в какой-нибудь .py файл автоматически сгенерированную функцию

def GetLastTradePrice...

Цель этого - узнать, какие у меня есть возможные функции и свойства, когда у меня есть клиент. Это значит, что если я напишу:

from suds.client import Client
client = Client(SOME_URL)

Затем, после ввода следующего

client.service.

Я получу опцию автозаполнения GetLastTradePrice.

Ответы [ 2 ]

0 голосов
/ 23 июня 2011

Существует множество реализаций сервера SOAP для python, некоторые из которых более удобны в использовании, чем другие, ищите пакеты, связанные с SOAP, по адресу PyPI или посмотрите на вики-страницу о веб-сервисах вpython.org.Существуют два типа серверов SOAP для python:

  1. Серверы, которые могут генерировать заглушки серверов из файлов WSDL (например, ZSI)
  2. Серверы, которые могут напрямую создавать WSDL из методов класса обслуживания(как мыло, Ладон)
0 голосов
/ 22 июня 2011

Ye olde ZSI библиотека может генерировать код Python из определения WSDL, но, по сравнению с suds, это довольно болезненно использовать и требует другого действительно старого модуля под названием PyXML.Я бы придерживался пены, автозаполнение не стоит всего этого.

...