Parser html

Soyez le premier à donner votre avis sur cette source.

Vue 21 825 fois - Téléchargée 1 643 fois

Description

Ce code est une lib qui permet d'accéder la structure d'une page HTML

Sa tolérance sur la qualité du code HTML est certes inférieur aux navigateurs mais suffisent pour la plupart des applis ou je l'ai utilisé

Source / Exemple :


(tout est dans le zip)

Conclusion :


Bientot quand le html sera bien formaté, on pourra utiliser un parseur xml mais pour l'instant... n'hésitez par à le tester et a me faire parvenir l'url des pages qui mettre ce code a genoux :(

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

thiosyiasar
Messages postés
186
Date d'inscription
lundi 11 mars 2002
Statut
Membre
Dernière intervention
30 novembre 2010
2
(non je ne suis pas mort)
Bon juillet c'est loin mais je vais m'occuper de cette source rapidement pour la mettre a jour et ensuite répondre à ta question. Faut que je replonge dans le source, merci a tous pour vos tests et vos contributions
juliensmarties
Messages postés
16
Date d'inscription
vendredi 8 août 2008
Statut
Membre
Dernière intervention
5 août 2010

Bonjour,

J'aurais souhaité savoir si tu avais mis à jour ton appli ? si oui ou puis-je la trouver ?
Si non comment faire un correctif pour récupérer un truc du type:

[www.google.fr

Google c'est par là
]

Comment faire pour pouvoir récupérer "Google c'est par là" ?

Merci à ceux qui me viendrons en aide

Ju
Mathrb
Messages postés
7
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
22 juin 2010

Merci
C'est ce que je cherchais
thiosyiasar
Messages postés
186
Date d'inscription
lundi 11 mars 2002
Statut
Membre
Dernière intervention
30 novembre 2010
2
Merci brlecler

Je vais me bloquer un peu de temps pour corriger tout ca et intégrer ton correctif.

A+
brlecler
Messages postés
3
Date d'inscription
lundi 13 septembre 2004
Statut
Membre
Dernière intervention
13 février 2009

Il y a plus largement, un problème sur les objets (les tags) imbriqués les uns dans les autres. Normalement c'est le genre de problème qui doit se traiter par la récursivité. Mais étant donné que par ailleurs ce code fonctionne bien, voici un correctif qui permet de bien traiter des imbrications du genre:

BBBSSSSPSPSPDIDIDI

Dans le fichier HtmlDocument déclarer la classe:

class TagLie
{
public CB_HtmlTag Tag;
public TagLie Parent;
}

Dans la méthode HtmlDocument:extracttags

dans le case '<' remplacer :

if (oTags.Count > 0)
oTags[oTags.Count - 1].Value = oValue;

par

TagActif.Tag.Value = oValue;

dans le case '>' , après la ligne oTags.Add(t); ajouter le bloc :

TagLie Nouveau = new TagLie();
Nouveau.Tag = t;
if (t.IsCloseTag)
{
TagActif = TagActif.Parent;
}
else
{
Nouveau.Parent = TagActif;
TagActif = Nouveau;
}

Et ça va fonctionner beaucoup mieux...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.