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

VBScript Discussion :

Problème lecture XML


Sujet :

VBScript

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 6
    Par défaut Problème lecture XML
    Je suis en train de faire un script pour récupérer des infos sur un livre
    à partir de son ISBN. Pour cela j'utilise un service Web : ISBNdb.com

    Jusqu'ici pas de problème , j'ai crée ma fonction
    pour faire une requête et récupérer le résultat qui s'affiche sous
    une structure XML.

    Mais mon problème c'est d'y récupérer ces infos :
    - Le nom du livre : <Title> ou <TitleLong>
    - Le ou les auteurs : <AuthorsText>
    - L'éditeur : <PublisherText>.

    J'ai essayé le parseur XMLDOM de Microsoft, sans succès.
    J'ai suivit le tuto de Baptiste Wicht, très bon tuto, mais j'ai du mal à l'appliquer pour mon propre code.

    Je joint ici un exemple de structure revoyée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <?xml version="1.0" encoding="UTF-8"?>
     
    <ISBNdb server_time="2010-01-01T18:04:11Z">
    <BookList total_results="1" page_size="10" page_number="1" shown_results="1">
    <BookData book_id="rhinoceros_a02" isbn="2070368165" isbn13="9782070368167">
    <Title>Rhinoceros</Title>
    <TitleLong>Rhinoceros (French Edition)</TitleLong>
    <AuthorsText>Eugene Ionesco</AuthorsText>
    <PublisherText publisher_id="distribooks">Distribooks</PublisherText>
    </BookData>
    </BookList>
    </ISBNdb>
    Ah au fait ! Si sa intéresse quelqu'un je lâche ma fonction
    (Besoin d'une Key, il suffit de s'inscrire sur le site).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Function RechercheLivre(APIKey, BookISBN)
    	Dim objHTTP
    	Set objHTTP = CreateObject("Microsoft.XMLHTTP")
                    objHTTP.open "POST", "http://isbndb.com/api/books.xml?", False
                    objHTTP.send ("access_key=" & APIKey) + ("&index1=isbn&value1=" & BookISBN)
    		RechercheLivre = objHTTP.responseText
    	Set objHTTP = nothing
    End Function
    Merci pour votre précieuse aide

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    eu.... et que veux tu récupérer ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 6
    Par défaut
    Désolé

    Le nom du livre : <Title> ou <TitleLong>
    Le ou les auteurs : <AuthorsText>
    L'éditeur : <PublisherText>

  4. #4
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Tiens inspire toi de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Set xmlDoc = CreateObject("Microsoft.XMLDOM")
    xmlDoc.Async = "false"
    if xmlDoc.LoadXml(RechercheLivre("MaClef","0596002068")) then 
      Wscript.echo "Titre long = " & xmlDoc.selectSingleNode("/ISBNdb/BookList/BookData/TitleLong").text
      Wscript.echo "Titre      = " & xmlDoc.selectSingleNode("/ISBNdb/BookList/BookData/Title").text
      Wscript.echo "Auteur     = " & xmlDoc.selectSingleNode("/ISBNdb/BookList/BookData/AuthorsText").text
    end if
    faudrait peu-être rajouter quelque tests ... par exemple pour ta requête :
    ObJHTTP.Status (200 ), ObJHTTP.StatusText (Ok) ..

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 6
    Par défaut
    Merci ça marche nickel

    Juste une petit truc, pour éviter les bugs je veut récupérer
    l'attribut total_results dans une variable.
    J'ai essayé getAttribute mais il me sort qu'il ne connait pas
    la méthode .

    Comment je fait alors pour récupérer cette valeur ?

  6. #6
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    tu pourrai montrer le code qui ne fonctionne pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Wscript.echo "total_results     = " & xmlDoc.selectSingleNode("/ISBNdb/BookList").getAttribute("total_results")

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 6
    Par défaut
    Ah ok, j'ai compris comment faire pour les
    attributs ! Merci

    J'ai même pris le temps d'adapter le code sur VB.


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème lecture xml sous internet explorer
    Par forst dans le forum Web
    Réponses: 7
    Dernier message: 02/07/2013, 16h48
  2. Problème lecture xml avec XML::SIMPLE
    Par chalu133 dans le forum Langage
    Réponses: 1
    Dernier message: 05/12/2012, 16h12
  3. Problème lecture XML
    Par Furr dans le forum VB.NET
    Réponses: 3
    Dernier message: 09/08/2012, 10h07
  4. [JDOM] Problème lecture XML
    Par Mhira dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 29/05/2012, 21h50
  5. Problème lecture XML
    Par linkman dans le forum C#
    Réponses: 2
    Dernier message: 19/09/2008, 11h53

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