2017-01-11 3 views
1

Ich bin neu in Python und versuche mit WSDL zu arbeiten, um Daten zu generieren.Für den Logger "suds.client" konnten keine Handler gefunden werden.

>>> from suds.client import Client 
>>> client = Client('http://XXXXXXXXXXXXXXXXXXXXXXXXXX/datafeed.cfc?WSDL') 
>>> result = client.service.SalesDetailJSON(EventGUID='5789ADDC-6A64-E411-B196-0025B3A62EEE') 
No handlers could be found for logger "suds.client" 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "build/bdist.linux-x86_64/egg/suds/client.py", line 535, in __call__ 
    File "build/bdist.linux-x86_64/egg/suds/client.py", line 595, in invoke 
    File "build/bdist.linux-x86_64/egg/suds/client.py", line 630, in send 
    File "build/bdist.linux-x86_64/egg/suds/client.py", line 681, in failed 
    File "build/bdist.linux-x86_64/egg/suds/bindings/binding.py", line 230, in get_fault 
AttributeError: 'NoneType' object has no attribute 'getChild' 

Ich habe eines der Methode von Druck-Client:

Service (DataFeedService) tns="http://XXXXXXXXXXXXXXX" 
     Prefixes (2) 
      ns0 = "http://rpc.xml.coldfusion" 
      ns1 = "http://schemas.xmlsoap.org/soap/encoding/" 
     Ports (1): 
      (datafeed.cfc) 
      Methods (2): 
       SalesDetail(xs:double Page, xs:double RecPP, xs:string EventGUID, xs:string LastUpdated, xs:boolean IncludeSurvey, xs:string SurveyKey,) 
       SalesDetailJSON(xs:string EventGUID, xs:string LastUpdated, xs:string NoFinancials,) 
      Types (49): 
       ........... 

Mein Ziel jeder Stunde zu konvertieren und zu speichern XML. Jede Hilfe wird sehr geschätzt!

Antwort

0

Sie müssen zuerst einen Looger einrichten, um die Fahrt dieser Nachricht zu erhalten. Werfen Sie einen Blick auf https://fedorahosted.org/suds/wiki/Documentation#LOGGING und https://docs.python.org/2/library/logging.html (oder https://docs.python.org/3/library/logging.html je nach Ihrer Version von Python). Allerdings sollte so etwas das Problem lösen:

>>> import logging 
>>> from suds.client import Client 
>>> logging.getLogger('suds.client').setLevel(logging.DEBUG) 
>>> # ... 
Verwandte Themen