IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Réseau/Web Python Discussion :

envoi de requete xml


Sujet :

Réseau/Web Python

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2010
    Messages : 4
    Points : 1
    Points
    1
    Par défaut envoi de requete xml
    bonjour a tous
    je dois, dans le but de l'intégrer par après a openerp, faire un script en python qui me permet d'envoyer une requete xml sur un serveur externe et de recevoir la réponse en xml également.
    mais voila le probleme, je ne trouve pas de méthode adéquate en python
    si quelqu'un pouvait m'aider ça serait sympa.

  2. #2
    Membre expérimenté Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Points : 1 728
    Points
    1 728
    Par défaut
    bonjour,

    peux-tu préciser le protocole que tu veux utiliser?

    Si c'est HTTP, tu peux regarder la doc du module httplib.
    "Etre conscient de la difficulté permet de l'éviter.."
    Lao-Tseu.

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2010
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    il s'agit du protocole https
    est ce qu'il y aurait ce qu'il me faut sur la doc httplib?

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2010
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    j'ai utiliser ceci mais la réponse reçue n'est pas satisfaisante
    quelqu'un aurait une autre idée?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    import urllib,urllib2
    request = urllib.urlopen("https://server",'C:\Users\Desktop\requete.xml')
    print request
    opener = urllib.urlretrieve("https://server",'C:\Users\Desktop/reponse.xml')
    print request.read()

  5. #5
    Membre habitué
    Inscrit en
    Mars 2003
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mars 2003
    Messages : 127
    Points : 149
    Points
    149
    Par défaut
    Tu utilise pas du xml-rpc ?
    http://docs.python.org/library/xmlrpclib.html

    Sinon je te conseil fortement de lire plus la doc car ton code ne va jamais marcher exemple
    If the url uses the http: scheme identifier, the optional data argument may be given to specify a POST request (normally the request type is GET). The data argument must be in standard application/x-www-form-urlencoded format; see the urlencode() function below.
    http://docs.python.org/library/urlli...#module-urllib

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2010
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    il ne s'agit pas de xml rpc,
    je comprend bien le fait que mon code ne fonctionne pas mais il n'y a rien dans la doc qui me donne un exemple de fonctionnement avec le GET dans la méthode, il n'y a non plus aucune explications sur l'endroit ou sera enregistrer la réponse...
    je suis un peu perdu ..

  7. #7
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,
    Une requête http de type GET est un message de la forme
    GET URL HTTP/1.1
    Host: www.serveur.com
    URL pouvant être n'importe quoi et peut être un nom de fichier. Mais dans ce cas, c'est plutôt du plutôt du WebDAV que du HTTP en général.
    Ce que répond le serveur HTTP à la réception d'un GET à l'URL donnée est complètement lié à l'interprétation qui sera faite: par le serveur HTTP qui pourra la rediriger comme il veut, par le service à qui a été redirigée la requête.
    je dois, dans le but de l'intégrer par après a openerp, faire un script en python qui me permet d'envoyer une requete xml sur un serveur externe et de recevoir la réponse en xml également.
    Expédier une requête avec GET n'est pas possible, il faut utiliser POST ou PUT pour pouvoir joindre un message à la requête http correspondante.

    Exemple de requête POST contenant un corps de type XML:
    POST URL HTTP/1.1
    Host: www.serveur.com
    Content-Type: application/xml;charset=UTF-8
    <adresse>
    <rue>1 Avenue du Maine</street>
    <ville>Paris</ville>
    </adresse>

    => savoir ce qu'attend et répondra OpenERP (au ce soit côté contenu des entête HTTP et corps des messages),
    => Côté Python:
    - pour faire des requêtes HTTP paramétrables (accéder au en-têtes), la bibliothèque httplib devrait faire l'affaire même pour HTTPS, voir la doc.
    - pour ce qui est de "sérialiser" et "de-sérialiser" le corps des messages d'objets Python en représentations XML. lxml est très bien, mais il y en a d'autres: httplib permet de récupérer ou d'ajouter le corps d'une requete ou d'une réponse HTTP après, c'est selon.
    Cordialement,

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  8. #8
    Membre habitué
    Inscrit en
    Mars 2003
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mars 2003
    Messages : 127
    Points : 149
    Points
    149
    Par défaut
    Et ça
    http://doc.openerp.com/developer/6_2...python-example

    Si il y a aucun rapport il faudrait peut que tu nous disent qu'est ce que tu veux envoyer le nom du serveur ...

Discussions similaires

  1. Réponses: 2
    Dernier message: 30/08/2011, 11h06
  2. applet envoie un fichier xml a la servlets
    Par hlaura dans le forum Applets
    Réponses: 3
    Dernier message: 25/07/2006, 10h40
  3. Réponses: 9
    Dernier message: 22/06/2006, 10h11
  4. Pb d'envoi de requete via un TADOQuery à une BD access
    Par gsmurf dans le forum Bases de données
    Réponses: 4
    Dernier message: 15/06/2004, 13h20
  5. [C#] Envoi de fichier xml
    Par minnieBis dans le forum ASP.NET
    Réponses: 16
    Dernier message: 25/05/2004, 14h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo