Cliente Python SOAP con Zeep - autenticación

Estoy tratando de usar Zeep para implementar un cliente SOAP, ya que parece la única biblioteca mantenida en este momento:

ZSI se veía muy bien, pero su última versión en pypi data 2006jabonaduras parecía ser una alternativa popular, pero el maestro no se mantiene desde 2011 y hay muchos tenedores, pero ninguno parece "oficial" y "lo suficientemente reciente" como para ser utilizado en un proyecto grande.

Entonces, al tratar de usar Zeep, estoy atascado con la autenticación requerida por el servidor para acceder al WSDL.

Tal operación fue bastante fácil con ZSI:

from ZSI.client import Binding
from ZSI.auth import AUTH

b = Binding(url='http://mysite.dom/services/MyWebServices?WSDL')
b.SetAuth(AUTH.httpbasic, 'userid', 'password')

y puedo encontrar algo similar en __main__.py de Zeep:

from six.moves.urllib.parse import urlparse
from zeep.cache import InMemoryCache, SqliteCache
from zeep.client import Client
from zeep.transports import Transport

cache = SqliteCache() if args.cache else InMemoryCache()
transport_kwargs = {'cache': cache}
result = urlparse(args.wsdl_file)
if result.username or result.password:
    transport_kwargs['http_auth'] = (result.username, result.password)
transport = Transport(**transport_kwargs)
client = Client(args.wsdl_file, transport=transport)

pero eso no funciona en mi caso, recibo un error:

Exception: HTTPConnectionPool(host='schemas.xmlsoap.org', port=80): Max retries exceeded with url: /soap/encoding/ (Caused by NewConnectionError('<requests.packages.urllib3.connection.HTTPConnection object at 0x7f3dab9d30b8>: Failed to establish a new connection: [Errno 110] Connection timed out',))

Respuestas a la pregunta(3)

Su respuesta a la pregunta