примеры - Какие библиотеки клиентов SOAP существуют для Python и где для них имеется документация?




soap python 3 (10)

Im использует SOAPpy с Python 2.5.3 в настройках производства.

Мне пришлось вручную отредактировать пару файлов в SOAPpy (что-то вроде кода заголовка не в том месте), но кроме этого он работал и продолжает делать это очень надежно.

Я никогда раньше не использовал SOAP и я немного нового для Python. Я делаю это, чтобы познакомиться с обеими технологиями. Я установил SOAPlib и я попытался прочитать их Client документацию, но я не очень хорошо ее понимаю. Есть ли что-то еще, что я могу изучить, что больше подходит для того, чтобы быть клиентской библиотекой SOAP для Python?

Изменить: на всякий случай это помогает, я использую Python 2.6.


SUDS - это способ пойти, не вопрос об этом.


В моем заключении мы имеем следующее:

Сторона клиента мыла:

использовать только bitbucket.org/jurko/suds (обновленный 2016), пена bitbucket.org/jurko/suds и обновляется.

ОБНОВЛЕНИЕ 06/2017: библиотека suds-jurko не обновляется и, по- видимому, оставлена ,

Я протестировал библиотеку zeep но получил ограничения по токенам, теперь просто поддерживаю UsernameToken, я сообщаю об bug чтобы создать маркер метки времени, и автор обновил код, чтобы исправить его.

Zeep начинается хорошо и имеет хорошую documentation , поэтому я недавно перенес мой код с пеной на zeep и отлично работает.

Сторона сотового сервера:

У нас есть TGWS, soaplib (pysimplesoap не проверено). Использование IMHO и помощь soaplib должны быть выбором.

С наилучшими пожеланиями,


Как я предложил here я рекомендую вам бросить свой собственный. На самом деле это не так сложно, и я подозреваю, что это причина того, что там нет лучших библиотек SOAP Python.


Мы выпустили новую библиотеку pysimplesoap , которая обеспечивает поддержку простого и функционального клиента / сервера. Это цели: простота использования и гибкость (не требуются классы, автогенерированный код или xml), интроспекция и генерация WSDL, стандартное соответствие WS-I, совместимость (включая Java AXIS, .NET и Jboss WS). Он входит в состав Web2Py, чтобы включить полнотекстовые решения (дополняя другие поддерживаемые протоколы, такие как XML_RPC, JSON, AMF-RPC и т. Д.).

Если кто-то изучает SOAP или хочет исследовать его, я думаю, что это хороший выбор для начала.


Мы использовали SOAPpy из Python Web Services , но похоже, что ZSI (тот же источник) заменяет его.


У меня был хороший опыт работы с SUDS SUDS

Использовали их TestSuite в качестве документации.


Я полагаю, что soaplib не одобряет своего клиента SOAP («отправитель») в пользу пены. На данный момент soaplib сосредоточен на том, что он является агностическим сервером SOAP-сервера («приемник»). В настоящее время soaplib находится в активной разработке и обычно обсуждается в списке рассылки SOAP Python:

http://mail.python.org/mailman/listinfo/soap


пена довольно хороша. Я попробовал SOAPpy, но не получил его, чтобы работать так, как мне было нужно, в то время как пена работала очень быстро.


Обновление (2016):

Если вам нужен только SOAP-клиент, есть хорошо сохранившаяся библиотека под названием zeep . Он поддерживает как Python 2, так и 3 :)

Обновить:

В дополнение к тому, что упоминалось выше, я буду ссылаться на страницу Python WebServices, которая всегда актуальна со всеми активно поддерживаемыми и рекомендованными модулями для SOAP и всех других типов webservice.

К сожалению, на данный момент я не думаю, что есть «лучшая» SOAP-библиотека Python. У каждого из основных доступных есть свои плюсы и минусы.

Старые библиотеки:

  • SOAPy : Был «лучшим», но больше не поддерживался. Не работает на Python 2.5+

  • ZSI : Очень больно использовать, и развитие происходит медленно. Имеет модуль под названием «SOAPpy», который отличается от SOAPy (см. Выше).

«Новые» библиотеки:

  • SUDS : очень Pythonic, и легко создавать WSDL-потребляющие SOAP-клиенты. Создание SOAP-серверов немного сложнее. (Этот пакет не работает с Python 3. Для Python3 см. SUDS-py3)

  • zeep : версия SUDS для Python3

  • spyne : Создание серверов легко, создавая клиентов немного сложнее. Документации несколько не хватает.

  • ladon : Создание серверов очень похоже на soaplib (с использованием декоратора). Ladon предоставляет больше интерфейсов, чем SOAP, в то же время без дополнительного кода пользователя.

  • pysimplesoap : очень легкий, но полезный как для клиента, так и для сервера - включает интеграцию сервера web2py, которая поставляется с web2py.

  • SOAPpy : В отличие от заброшенного SOAPpy, размещенного по ссылке ZSI выше, эта версия была фактически сохранена до 2011 года, теперь она тоже заброшена.
  • soaplib : простая в использовании библиотека python для написания и вызова мыльных веб-сервисов. Веб-службы, написанные с помощью soaplib, просты, легки, хорошо работают с другими реализациями SOAP и могут быть развернуты как приложения WSGI.
  • osa : Быстрая / тонкая простая в использовании клиентская библиотека SOAP python.

Из вышеизложенного я использовал только SUDS лично, и мне это очень понравилось.





soap-client