begin process at 2012 05 28 15:00:07
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Reseaux et Internet

 > SUPPRIMER LES BALISES D'UN FICHIER HTML

SUPPRIMER LES BALISES D'UN FICHIER HTML


 Information sur la source

Note :
Aucune note
Catégorie :Reseaux et Internet Classé sous :html, tag, balise, texte, parser Niveau :Débutant Date de création :06/06/2007 Date de mise à jour :11/06/2007 21:07:23 Vu :12 598

Auteur : AlexN

Ecrire un message privé
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note


 Description

Ce programme lit le contenu d'une url et le transforme en texte. Du moins, il supprime toutes les balises html.
Il utilise la librairie htmlparser.

Source

  • import org.htmlparser.Parser;
  • import org.htmlparser.util.NodeIterator;
  • import org.htmlparser.util.ParserException;
  • public class TagStripper{
  • public static void main(String[] args){
  • final StringBuilder text = new StringBuilder();
  • try {
  • final Parser parser = new Parser ("http://www.javafr.com");
  • NodeIterator i = parser.elements();
  • while (i.hasMoreNodes())
  • text.append(i.nextNode().toPlainTextString());
  • System.out.println(text);
  • } catch(ParserException e){
  • e.printStackTrace();
  • }
  • }
  • }
import org.htmlparser.Parser;
import org.htmlparser.util.NodeIterator;
import org.htmlparser.util.ParserException;

public class TagStripper{

	public static void main(String[] args){

		final StringBuilder text = new StringBuilder();

		try {
			final Parser parser = new Parser ("http://www.javafr.com");
			NodeIterator i = parser.elements();
			while (i.hasMoreNodes()) 
				text.append(i.nextNode().toPlainTextString());
			System.out.println(text);
		} catch(ParserException e){
			e.printStackTrace();
		}

	}
}



 Historique

11 juin 2007 21:07:23 :
Correction suite au commentaire de tarzent Merci pour ta précision :o)

 Sources du même auteur

CHUNKEDXML, LIRE DU XML PAR MORCEAU
Source avec Zip EXPLORATEUR D'IMAGES
Source avec Zip ANALYSEUR XML GÉNÉRIQUE ET PROGRAMMATION REFLÉXIVE
Source avec Zip REDIRECTION D'URL ET TRANSMISSION DE COOKIES
FAIRE CLIGNOTER UN BOUTON AVEC UN TIMER SWING

 Sources de la même categorie

Source avec Zip Source avec une capture CHAT POUR UN RÉSEAU LOCAL par Julien39
PILOTER À DISTANCE UN SERVEUR VIA SMS par hhoareau
Source avec Zip Source avec une capture SERVEUR D'OBJET ET EXEMPLE D UTILISATION : SERVER CHAT ET SO... par GodConan
Source avec Zip Source avec une capture RÉCUPÉRER CHEMIN DOSSIER DEPUIS POSTE DISTANT VIA SOCKET. par Dariumis
Source avec Zip Source avec une capture LOCALISATEUR D'HOTE (IL SUFFIT D'ENTRE L'ADRESSE ET LE PROG ... par amateur_java

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture CRYPTEUR-DÉCRYPTEUR AES par dragooon74
Source avec Zip Source avec une capture BANNIÈRE EN SWING : TEXTE DÉFILANT SUR UN JLABEL par Julien39
Source avec Zip PARSEUR STRING/HTML HTML/STRING par rem02
Source avec Zip BALISAGE DE TEXTE : HTML, PHPBB OU AUTRE par DARKSIDIOUS
BLOCNOTE TEXTAREA par jchiaram

Commentaires et avis

Commentaire de tarzent le 11/06/2007 13:40:42

Salut,

Avec un StringBuilder c'est beaucoup mieux...
L'inconvénient de ta méthode c'est qu'à chaque itération il instancie un nouvel Objet String.

ex:
public static String HtmlToText(final String urlStr)
throws ParserException {
final StringBuilder text = new StringBuilder();
final Parser parser = new Parser(urlStr);
for (final NodeIterator i = parser.elements(); i.hasMoreNodes();)
text.append(i.nextNode().toPlainTextString());
return text.toString();
}

;-)

Commentaire de rikichi le 13/04/2008 01:25:53

ca serai rapide avec ca :


String URL = "http://www.javafr.com";
StringExtractor se = new StringExtractor (URL);
String contents = se.extractStrings(true);
System.out.println(contents);


good luck :)

Commentaire de bassoumbassoum le 12/03/2009 12:11:06

Bonjour,
j'ai éssayé un code pour parser un fichier html, j'ai réussit de sortir toutes les balises c'est mon codes:
#
import java.io.Serializable;
import java.net.HttpURLConnection;
import java.net.URLConnection;
import org.htmlparser.*;
import org.htmlparser.filters.*;
import org.htmlparser.http.*;
import org.htmlparser.lexer.*;
import org.htmlparser.util.*;
import org.htmlparser.visitors.*;
import org.htmlparser.tags.*;
import org.htmlparser.nodes.*;

public class SimpleParse4 {
    public static void main (String [] args) {
        Parser parser = null;
        NodeFilter filter = null;

                  try {
parser = new Parser ();
if (1 < args.length)
    filter = new TagNameFilter (args[1]);
else
    {
filter = null;
// for a simple dump, use more verbose settings
parser.setFeedback (Parser.STDOUT);
Parser.getConnectionManager ().setMonitor (parser);
    }
Parser.getConnectionManager ().setRedirectionProcessingEnabled (true);
Parser.getConnectionManager ().setCookieProcessingEnabled (true);
parser.setResource ("http://www.google.com");
NodeList list = parser.parse(filter);
NodeIterator i = list.elements ();
                while (i.hasMoreNodes ())
                    processMyNodes(i.nextNode ());
    }
            catch (EncodingChangeException ece) {
try {
  
    parser.reset ();
    NodeList list = parser.parse(filter);
    for (NodeIterator i = list.elements (); i.hasMoreNodes (); )
processMyNodes (i.nextNode ());
}
catch (ParserException e) {
    e.printStackTrace ();
}
            }
            catch (ParserException e) {
                e.printStackTrace ();
            }
    }
    static void processMyNodes (Node node) throws ParserException {
        if (node instanceof TextNode)
        {
            
            TextNode text = (TextNode)node;
          
    System.out.println("text: \"" + text.getText() + "\"");
        }
        else if (node instanceof RemarkNode)
        {
          
            RemarkNode remark = (RemarkNode)node;
        
        }
        else if (node instanceof HeadTag)
        {
          
            HeadTag tag = (HeadTag)node;
    NodeList nl = tag.getChildren ();
    if (nl != null)
for (NodeIterator i = nl.elements (); i.hasMoreNodes();) {
    Node nextNode = i.nextNode();
    if(nextNode instanceof TitleTag) {
System.out.println("Title: " + ((TitleTag)nextNode).getTitle());
break;
    }
}
        }
        else if (node instanceof TagNode)
        {

            TagNode tag = (TagNode)node;
    String tagName = tag.getTagName();
            System.out.println("tag name: " + tagName);
            System.out.println("tag text: " + tag.getText());
    if(tag instanceof LinkTag) {
       LinkTag link = (LinkTag)tag;

       System.out.println("Link: " + link.getLink());
    }

            NodeList nl = tag.getChildren ();
            if (null != nl)
                for (NodeIterator i = nl.elements (); i.hasMoreNodes(); )
                    processMyNodes (i.nextNode ());
        }
    }
}
#

mais maintenant je veux afficher chaque balise dans un vecteur
exemple toutes les balises img dans un vecteur
les balises link dans un autre vecteur etc...
j'ai éssayé mais il m'affiche chaque balise image dans un vecteur et moi je veux les regrouper dans un seul vecteur. si quelqu'un peu m'aider et merci d'avance.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Balise Html souris et applet [ par ceteTervu ] BonjourJ'ai un problèmede comptabilité entre une applet java et son environnement HTML.Je souhaiterais que sur passage de la souris sur cette applet, creer des balise html avec un porgramme java. [ par onini ] Pourriez vous m'aider , j'ai un souci, voila en fait je doit faire plusieurs class java qui permetrrait de generer des balises html comme par exemple Convertir du HTML en texte afin de l'afficher dans un JTextArea [ par nico971gwada ] Salut, Je d&#233;bute en java et j'ai un petit probl&#232;me. J'ai un projet &#224; faire &#224; l'&#233;cole un truc pas tr&#232;s compliqu&#233; : recuperer contenu de balise html [ par lolofx ] bonjour, voila, j'aimerai recuperer le contenu de balises html avec leurs attributsvoici un exemple : &lt;h2&gt; &lt;span style="font-weight: bol Un texte formaté en HTML dans un JEditorPane [ par aeled ] Bonjour.J'ai un JEditorPane et je voudrais mettre du texte mais en HTML histoire de mettre des couleurs des images... C'est quoi le moyen le plus simp Un Zolie text html dans mes JTextPane [ par DirigeableMoue ] Coucou de thailande ou il fait chaud mais ou il n y a pas de bouquins sur java.J ai donc une fenetre avec un text pane et j affiche un texte au cour d le XML parser SAX : pb lorsque <balise></balise> [ par Enguerrant ] hello!voilà, j'utilise SAX pour parser un fichier XML, et çà se passe plutot bien !! sauf lorsque dans le fichier en question, il n'y a, à un endroit Afficher les 'HTML.Tag A' dans une JList [ par KanakMan ] voilà, je veux afficher le nom de tous les Tag A d'un document HTML dans une JList.ensuite, quand je clickerai dessus (l'item de la liste), ça devrait java et balise html [ par manal906 ] bonjourJe cherche une fonction en java qui a comme arguments deux cha&#238;nes de caract&#232;res: le nom d'une balise html&nbsp;et&nbsp;le nom d'un&n reccuperer tag meta d'un document html [ par sisadel ] bonjour a tous je voudrai reccuperer les tag meta d'un document html j'utilise pour ca un HtmlDocument .Iterator pour iterer sur le tag META mais ca n


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,967 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales