Extraire le text d'une page Web

cs_rikichi Messages postés 29 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 15 avril 2008 - 12 avril 2008 à 14:15
cs_rikichi Messages postés 29 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 15 avril 2008 - 13 avril 2008 à 11:57
Bonjour

ca fait deux semaines que je cherche comment extraire le text d'une page web à l'aide des expressions réguliére
mais je n'arrive pas pour le moment :s

si quelqu'un peut m'aider SVP ca serai génial :)

Bonne journée

7 réponses

cs_rikichi Messages postés 29 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 15 avril 2008
12 avril 2008 à 14:16
une chose : quand g dit extraire le text j voulai dir  le text sans les balises donc j veux ignorer toutes les balises voila :)
0
Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 38
12 avril 2008 à 15:41
Salut:

Les parseurs existent pour nous simplifier la vie.

Comme il y a des parseurs XML il y a aussi de parseurs HTML.

htmlparser.sourceforge.net
0
cs_rikichi Messages postés 29 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 15 avril 2008
12 avril 2008 à 16:55
Salut
g vu ca :) mais le prob c'est que g déja commencé avec "java.util.regex"
j'ai vraiment besoin d'un pattern qui me permettra ca    , c'est ce que je cherche exactement  (une expression réguliére )

merci
0
Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 38
12 avril 2008 à 22:49
Salut:

Utilises cette expressions régulière:

</?[^>]+>

Cette expressions régulière permet d'identifier les balises HTML.

Est ce que tu veux supprimer les scripts (JavaScript, ...)?

Si oui, il faut revoir cette expression régulière.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_rikichi Messages postés 29 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 15 avril 2008
12 avril 2008 à 22:52
Dabord merci pour l'interet que tu portes à mon sujet :)

en fait j'aimerais avoir juste le texte brut c a dir ignorer le text qui se trouve entre les <a href et les autres balise vous voyez ?

merci :)
0
bensFouad Messages postés 39 Date d'inscription lundi 16 avril 2007 Statut Membre Dernière intervention 11 mai 2008
13 avril 2008 à 00:24
Salut;
je sais pas si ça ce que tu cherche, mais voila un exemple:

String text="<x>blabla</x>";
 Pattern p = Pattern.compile("<[^>]+>");
  Matcher m = p.matcher(text);
        String result ="";
       
        while(m.find()) {
            result = m.replaceAll("");
            System.out.println(result);
        }
la console affiche : blabla
0
cs_rikichi Messages postés 29 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 15 avril 2008
13 avril 2008 à 11:57
Re Salut
ok je crois j'ai déja utiliser cette techniwue là, son probleme c'est qu'elle laisse trop de bruit ( info inutile comme les element d'un menu etc..)
hier g tester avec HTMLparser de sourceforge , lui il donne un résultat vraiment pas mal le souci est quil me laisse les element de menu qu'il trouve , seulement si j peu les enlever ca serai cool

donc ce que je fais mnt  : j'utilise le HTML paser pour me donner le text , ce meme text j'essai de lui appliquer un Pattern pour enlever les elements de menu , voila :)

    String URL = "http://htmlparser.sourceforge.net";
    StringExtractor se = new StringExtractor(URL);
    String contents = se.extractStrings(true);
    Pattern p = Pattern.compile("<[^>]*>");   /////////   Là c pour enlever les liens qu'il m'affiche à coté des élement de menu
    Matcher m = p.matcher(contents);

    // Replace links with a space
    String text = m.replaceAll(" ");

bref si tu peux tester pour voir , ca serai cool; comme ca tu verra plus prét le prob qui se pose :)

merci

bonne journée
0