2015-04-17 2 views
0

J'ai le folloving code SOAP et du serveur je deviens comme réponse: endDate invalideComment faire une date valide avec SOAPpy?

Voici mon code:

from SOAPpy import WSDL2 as WSDL 
from SOAPpy import Types 
from lxml import etree 

url = 'http://www.mnb.hu/arfolyamok.asmx?wsdl' 
namespace = 'http://www.mnb.hu' 
inp = Types.dateType(name=(namespace, '2015,04,15')) 
out = Types.dateType(name=(namespace, '2015,04,17')) 

server = WSDL.Proxy(url, namespace=namespace) 
server.soapproxy.config.debug = 1 

server.GetExchangeRates(startDate=inp,endDate=out,currencyNames='RUB,CNY') 

Sur debug je vois: 2015-04-17Z, pourquoi est-Z à la fin de la date ?

+0

Il peut être utile de publier le message d'erreur plus en détail également. – tophyr

+0

<MNBExchangeRates> <erreur> non valide endDate </Erreur > </MNBExchangeRates > vatay

Répondre

0

Le Z dans 2015-04-17Z spécifie le fuseau horaire - 'Z' est un raccourci pour Zulu Time, ou UTC.

Voir http://www.w3schools.com/schema/schema_dtypes_date.asp pour plus de détails sur les formats date/heure SOAP.

+0

Et comment peut-il supprimer ou donner sans fuseau horaire, alors que dans document officiel est: Il est conseillé de spécifier les dates sous la forme de année-mois-jour (séparés par des tirets ou des points), les noms de devises doivent être spécifiés par leurs noms abrégés de trois lettres (majuscules), séparés par des virgules. Exemple de demande de requête : GetExchangeRates = ("2014-07-14", "2014-07-16", "RUB, SGD"); – vatay