Сценарий suds завершается с ошибкой Исключение: импортированная схема завершилась неудачно. Не удалось найти обработчики для средства ведения журнала "suds.xsd.sxbasic" - PullRequest
2 голосов
/ 24 января 2012

Новое в Python. Попытка построить простой мыльный клиент, используя Python. Эта же программа работает в среде, в которой не используется прокси.

***********Version 1
import suds
import urllib2
t = suds.transport.http.HttpTransport()
proxy = urllib2.ProxyHandler({'http': 'http://xxx.xxx.xxx.xxx:xx'})
opener = urllib2.build_opener(proxy)
t.urlopener = opener
ws = suds.client.Client('http://Server:13080/SM/7/ServiceDesk.wsdl', transport=t)
>>> 
No handlers could be found for logger "suds.xsd.sxbasic"
Traceback (most recent call last):
File "C:\localdisk\Python\testSoap.py", line 20, in <module>
ws = suds.client.Client('http://Server:13080/SM/7/ServiceDesk.wsdl', transport=t)
File "build\bdist.win32\egg\suds\client.py", line 112, in __init__
self.wsdl = reader.open(url)
File "build\bdist.win32\egg\suds\reader.py", line 152, in open
d = self.fn(url, self.options)
File "build\bdist.win32\egg\suds\wsdl.py", line 159, in __init__
self.build_schema()
File "build\bdist.win32\egg\suds\wsdl.py", line 220, in build_schema
self.schema = container.load(self.options)
File "build\bdist.win32\egg\suds\xsd\schema.py", line 93, in load
child.open_imports(options)
File "build\bdist.win32\egg\suds\xsd\schema.py", line 305, in open_imports
imported = imp.open(options)
File "build\bdist.win32\egg\suds\xsd\sxbasic.py", line 542, in open
result = self.download(options)
File "build\bdist.win32\egg\suds\xsd\sxbasic.py", line 567, in download
raise Exception(msg)
Exception: imported schema (http://www.w3.org/2005/05/xmlmime) at (http://www.w3.org/2005/05/xmlmime), failed
>>> 


**********Version2*********
from suds.client import Client
from suds import WebFault
url = 'http://Server:13080/SM/7/ServiceDesk.wsdl'
userid = 'falcon'
passwd = ''
d = dict(http='http://xxx.xxx.xxx.xxx:xx')
client = Client(url, proxy=d)
print client
>>> 
No handlers could be found for logger "suds.xsd.sxbasic"
Traceback (most recent call last):
File "C:\localdisk\Python\smWSDL.py", line 24, in <module>
client = Client(url, proxy=d)
File "build\bdist.win32\egg\suds\client.py", line 112, in __init__
self.wsdl = reader.open(url)
File "build\bdist.win32\egg\suds\reader.py", line 152, in open
d = self.fn(url, self.options)
File "build\bdist.win32\egg\suds\wsdl.py", line 159, in __init__
self.build_schema()
File "build\bdist.win32\egg\suds\wsdl.py", line 220, in build_schema
self.schema = container.load(self.options)
File "build\bdist.win32\egg\suds\xsd\schema.py", line 93, in load
child.open_imports(options)
File "build\bdist.win32\egg\suds\xsd\schema.py", line 305, in open_imports
imported = imp.open(options)
File "build\bdist.win32\egg\suds\xsd\sxbasic.py", line 542, in open
result = self.download(options)
File "build\bdist.win32\egg\suds\xsd\sxbasic.py", line 567, in download
raise Exception(msg)
Exception: imported schema (http://www.w3.org/2005/05/xmlmime) at (http://www.w3.org/2005/05/xmlmime), failed
>>> 
*********************************************************

Я проверил документацию SUDS @ https://fedorahosted.org/suds/wiki/Documentation, не мог собрать много - возможно, я что-то упускаю. Очень ценю ваш вклад, спасибо.

1 Ответ

1 голос
/ 24 января 2012

Я заметил, что в документах, на которые вы указываете, прокси указаны с:

{http:'host:port'}

not

{http:'http://host:port'}

Может ли это быть?

...