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

APIs XML Discussion :

JDOM ou XPATH pour récupérer les infos d'un fichier html ?


Sujet :

APIs XML

  1. #21
    oca
    oca est déconnecté
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2004
    Messages : 354
    Points : 421
    Points
    421
    Par défaut
    Hello, il faut passer par un objet Document, comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    URL google = new URL("http://www.monurl.com/monFichier.xml");
    URLConnection googleConnection = google.openConnection();
    InputSource dis;
    
    dis = new InputSource(googleConnection.getInputStream());
    
    Document document = null;
    try {
    	DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
    	DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
    	document = documentBuilder.parse(dis);
    } catch (ParserConfigurationException e) {
    	e.printStackTrace();
    }
    
    
    XPathFactory factory = XPathFactory.newInstance();
    XPath xPath = factory.newXPath();
    
    NodeList  nodes = (NodeList)xPath.evaluate("//variable1", document, XPathConstants.NODESET);
    String variable1 = (nodes.item(0).getTextContent().trim());
    
    nodes = (NodeList)xPath.evaluate("//variable2", document, XPathConstants.NODESET);
    String variable2 = (nodes.item(0).getTextContent().trim());
    
    nodes = (NodeList)xPath.evaluate("//variable3", document, XPathConstants.NODESET);
    String variable3 = (nodes.item(0).getTextContent().trim());
    
    
    System.out.println("variable1 : " + variable1 + ", variable2: " + variable2 + ", variable3 : " + variable3);

  2. #22
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    Citation Envoyé par oca Voir le message

    Il y a bien la norme XHTML qui réconcilie tout cela, mais la plupart des document HTML ne sont pas "bien formé" pour un parser XML
    Oui et non....
    La méthode decrite plus haut du evaluate est aussi développé en javascript sous firefox.
    Elle est applicable au document courant HTML ou XHTML.
    Il y a une certaine logique.Une fois l'abre chargé en mémoire il est "obligatoirement" corrigé.
    Le defaut c'est qu'on tape donc sur la vision FF DOM de l'interpretation de la page HTML qui peut donc différé sur certains points de la syntaxe utilisé pour le coder.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Comment fait-on pour récupérer les infos d'une image
    Par Mario Rousson dans le forum VB.NET
    Réponses: 4
    Dernier message: 30/11/2011, 14h10
  2. Réponses: 5
    Dernier message: 02/05/2008, 15h28
  3. Réponses: 1
    Dernier message: 30/04/2008, 15h09
  4. Réponses: 3
    Dernier message: 23/05/2007, 23h52
  5. Réponses: 7
    Dernier message: 06/04/2007, 17h53

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