Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 9 sur 9
  1. #1
    Candidat au titre de Membre du Club
    Inscrit en
    octobre 2007
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : octobre 2007
    Messages : 29
    Points : 10
    Points
    10

    Par défaut XML parser en asp et nodeValue

    Bonjour,

    Je bosse sur un serveur w2003 avec iis6.
    Je parse des fichiers xml (newsml exactement) pour insérer leur contenu dans une base de données.

    Voici un extrait d'un fichier :
    ...
    <p><b>John Samuel</b> Blablabla</p>
    ...
    Mon code
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    data=""
    Set objXML = Server.CreateObject("Microsoft.XMLDOM")
    objXML.Async = False
    objXML.SetProperty "ServerHTTPRequest", True
    objXML.ResolveExternals = True
    objXML.ValidateOnParse = True
    objXML.Load("C:/Inetpub/ftproot/test.xml")
    Set objRoot = objXML.documentElement
    If IsObject(objRoot) = False Then
    response.Write "<h2>No Root Found </h2>"
    End If
     
    n=0
     
    Set NodeList = objXML.getElementsByTagName("p")
     
    For Each Node In NodeList
    data=data&node.text
    next
    la valeur que je récupère est "John Samuel Blablabla"

    J'ai perdu le <b> et le </b> et d'une manière générale je n'arrive pas à récupérer les tag html contenu dans mes nœuds "<p>"

    J'ai essayé avec data=data&node.nodeValue mais ça me renvoi une chaine vide.

    Auriez vous des suggestions pour récupérer les tags html ?

    Merci d'avance

  2. #2
    Expert Confirmé Sénior
    Avatar de Immobilis
    Inscrit en
    mars 2004
    Messages
    6 551
    Détails du profil
    Informations forums :
    Inscription : mars 2004
    Messages : 6 551
    Points : 7 241
    Points
    7 241

    Par défaut

    Salut,

    Tu veux récupérer juste ce morceau de phrase dans un noeud de ton fichier XML?

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  3. #3
    Candidat au titre de Membre du Club
    Inscrit en
    octobre 2007
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : octobre 2007
    Messages : 29
    Points : 10
    Points
    10

    Par défaut

    Salut,

    Je voudrais récupérer les tag html contenu dans les différents nœuds du document xml et pas seulement le texte.

    Par exemple quand j'ai dans le fichier xml :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    <body>
        <p>
          Société<br/><b>M. DUPONT</b><br/>Directeur       de la Communication<br/>Tél.: +33 (0)1 44 44 44 44<br/>Fax: +33 (0)1 
          44 44 44 44 <br/>e-mail: <a href="mailto:toto@toto.com">toto@toto.com</a><br/>ou<br/><b>D.
          Schil</b><br/>
        </p>
    ....
    </body>
    Pour le moment je récupère seulement
    Code :
    1
    2
    Société M. DUPONT Directeur       de la Communication Tél.: +33 (0)1 44 44 44 44Fax: +33 (0)1 
          44 44 44 44 e-mail: toto@toto.com ou D.       Schil
    Et j'aimerais pouvoir passer en variable
    Code :
    1
    2
    3
          Société<br/><b>M. DUPONT</b><br/>Directeur       de la Communication<br/>Tél.: +33 (0)1 44 44 44 44<br/>Fax: +33 (0)1 
          44 44 44 44 <br/>e-mail: <a href="mailto:toto@toto.com">toto@toto.com</a><br/>ou<br/><b>D.
          Schil</b><br/>
    Cdlt,

  4. #4
    Expert Confirmé Sénior
    Avatar de Immobilis
    Inscrit en
    mars 2004
    Messages
    6 551
    Détails du profil
    Informations forums :
    Inscription : mars 2004
    Messages : 6 551
    Points : 7 241
    Points
    7 241

    Par défaut

    Passer en variable??

    Tu peux expliquer un peu plus?

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  5. #5
    Candidat au titre de Membre du Club
    Inscrit en
    octobre 2007
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : octobre 2007
    Messages : 29
    Points : 10
    Points
    10

    Par défaut

    Passer en variable : affecter le contenu du noeud xml à une variable asp afin de pouvoir la manipuler et l'insérer dans ma base de données.

    Si tu regardes le code que j'ai proposé dans mon 1er post, cette varaible s'appelle "data" en l'occurrence.

    Je ne te cache que je suis un peu étonné de devoir expliquer ça.

  6. #6
    Expert Confirmé Sénior
    Avatar de Immobilis
    Inscrit en
    mars 2004
    Messages
    6 551
    Détails du profil
    Informations forums :
    Inscription : mars 2004
    Messages : 6 551
    Points : 7 241
    Points
    7 241

    Par défaut

    Citation Envoyé par elric47 Voir le message
    Je ne te cache que je suis un peu étonné de devoir expliquer ça.
    C'est peut-être que ton pb est mal expliqué...

    Bonne chance

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  7. #7
    Candidat au titre de Membre du Club
    Inscrit en
    octobre 2007
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : octobre 2007
    Messages : 29
    Points : 10
    Points
    10

    Par défaut

    Je reformule en une phrase simple : Comment en asp , extraire d'un fichier xml, des données html.


  8. #8
    Expert Confirmé Sénior
    Avatar de Immobilis
    Inscrit en
    mars 2004
    Messages
    6 551
    Détails du profil
    Informations forums :
    Inscription : mars 2004
    Messages : 6 551
    Points : 7 241
    Points
    7 241

    Par défaut

    Je te dirai plutôt pourquoi il ne te renvoi pas les balises: tout simplement parce que les balises html <...> sont considérés comme des noeuds et que ton code ne fait pas ce que tu ne lui demandes pas de faire (récupérer le nom des noeuds).

    http://msdn.microsoft.com/en-us/library/aa468551.aspx
    "Winter is coming" (ma nouvelle page d'accueil)

  9. #9
    Candidat au titre de Membre du Club
    Inscrit en
    octobre 2007
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : octobre 2007
    Messages : 29
    Points : 10
    Points
    10

    Par défaut

    J'ai réussi à faire ce que je voulais en utilisant des templates xsl.

    Ce qui rendait d'autant plus difficile mon extraction, c'est que mon fournisseur de fichiers newsml a délibérement pris le parti de ne pas encapsuler le code html avec des balises CDATA.

    Bref pour extraire des données HTML d'un fichier XML, il faut passer par du XSL que ce soit en asp ou en php.

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •