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

Langage Java Discussion :

Extraction et enregistrement de parties d’un code source d’une page web.


Sujet :

Langage Java

  1. #1
    Candidat au Club
    Inscrit en
    Avril 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 3
    Par défaut Extraction et enregistrement de parties d’un code source d’une page web.
    Je souhaiterai extraire des parties d’une page web grâce aux balises du code source. Après plusieurs essais infructueux, il m’ait apparu que les sauts de ligne posaient problème (est-ce une simple impression?).
    Comment mémoriser dans une seule variable String les parties souhaitées du code source sans que les sauts de lignes n’interfèrent ?
    De plus, j’aimerais enregistrer cette variable String dans un fichier au format .html (pour éviter les problèmes liés aux caractères spéciaux) dans un dossier créé au préalable.
    Le code que j'ai réalisé ne fait qu'enregistrer un fichier vide. Comment puis-je faire ?

  2. #2
    Membre Expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Par défaut
    Citation Envoyé par patapo Voir le message
    Comment mémoriser dans une seule variable String les parties souhaitées du code source sans que les sauts de lignes n’interfèrent ?
    en les supprimant avant de faire le traitement....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    String source = ...;
    source= source.replaceAll("\r", "");
    source= source.replaceAll("\n", "");
    Citation Envoyé par patapo Voir le message
    Le code que j'ai réalisé ne fait qu'enregistrer un fichier vide. Comment puis-je faire ?
    en utilisant les stream correctement, en les flushant et en les fermant en fin de traitement notament... http://java.developpez.com/faq/java/...ngage_fichiers

  3. #3
    Candidat au Club
    Inscrit en
    Avril 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 3
    Par défaut
    Merci d'apporter une solution mais mon problème n'est pas dans l'utilisation du code source mais bien dans sa récupération. Mon code enregistre dans une variable String chaque ligne à la suite les unes des autres jusqu'à ce qu'il arrive à un saut de ligne puisque mon code le précise

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    while ((ligne = ligne_in.readLine()) != null) 
    {
    	liste.add(ligne);
    }
    Je sais donc où est ma faute mais comment la résoudre pour que mon code s'arrête bien quand la fin de la page est atteinte?

  4. #4
    Membre émérite Avatar de Heimdal
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    549
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 549
    Par défaut
    Qu'est-ce que tu utilises pour remplir ton fichier?

    ligne ou liste?

    Si c'est ligne, faut revoir les fondamentaux de la programmation et si c'est liste, faut utiliser l'API correctement.
    Ensuite les StringBuilder sont spécialement conçus pour concaténer des Strings.

    cf http://java.sun.com/javase/6/docs/ap...ngBuilder.html

  5. #5
    Candidat au Club
    Inscrit en
    Avril 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 3
    Par défaut
    Je me suis trompé, ce n'est pas

    mais plutôt

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    liste = liste + ligne;
    Mais mon problème est bien d'arriver à extraire tout le code source même si il y des sauts de ligne dedans.

  6. #6
    Membre Expert
    Avatar de yotta
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2006
    Messages
    1 088
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 088
    Par défaut Une piste...
    Regardez de près la classe JEditorPane. Cette dernière permet de charger un fichier HTML en l'interprètant ou pas. De plus, il permet d'accéder à un objet de type HTMLDocument qui vous permettra de situer facilement le positionnement de blocs de Tags HTML gràce qux méthodes qu'il propose. Je penses que vous pouvez faire intégralement ce que vous voulez simplement avec JEditorPane. Je me suis personnellement amusé à créer un petit programme permettant d'extraire les tableaux de résultats sportifs des pages Web pour en faire des feuilles Excel avec nom des colonnes, titre des tableaux en guise de noms de feuilles, etc... Je ne me suis servit que de JEditorPane....
    Une technologie n'est récalcitrante que par ce qu'on ne la connait et/ou comprend pas, rarement par ce qu'elle est mal faite.
    Et pour cesser de subir une technologie récalcitrante, n'hésitez surtout pas à visiter les Guides/Faq du site !

    Voici une liste non exhaustive des tutoriels qui me sont le plus familiers :
    Tout sur Java, du débutant au pro : https://java.developpez.com/cours/
    Tout sur les réseaux : https://reseau.developpez.com/cours/
    Tout sur les systèmes d'exploitation : https://systeme.developpez.com/cours/
    Tout sur le matériel : https://hardware.developpez.com/cours/

Discussions similaires

  1. Cacher une partie du code source
    Par Cybair dans le forum WordPress
    Réponses: 5
    Dernier message: 07/04/2015, 10h17
  2. [XL-2013] Multi-extraction de valeurs dans un même code source HTML ?
    Par Dan.exe dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 14/01/2015, 09h52
  3. Inclusion d'une partie du code source dans une documentation Doxygen
    Par feanor11 dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 01/02/2012, 17h29
  4. [VBA-E] Boucle de traitement de codes sources de pages web
    Par Currahee dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 19/09/2007, 09h11
  5. Réponses: 6
    Dernier message: 19/07/2007, 12h30

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