Discussion:
Analyser HTML en PHP
(trop ancien pour répondre)
Alain BARTHE
2010-03-09 14:29:34 UTC
Permalink
Bonjour,

Je voudrais analyser le contenu d'une page HTML exterieure depuis PHP.
Je cherche une librairie permettant de charger le code de cette page,
(sous la forme d'un DOM par exemple), pour pouvoir en extraire des
informations (par XPATH ou en me déplacant noeud par noeud, par tagname...)

Existe t-il une librairie "éprouvée" pour faire ça simplement ?

Je n'ai rien trouvé de très probant sur php.net
Olivier Masson
2010-03-09 22:52:31 UTC
Permalink
Post by Alain BARTHE
Bonjour,
Je voudrais analyser le contenu d'une page HTML exterieure depuis PHP.
Je cherche une librairie permettant de charger le code de cette page,
(sous la forme d'un DOM par exemple), pour pouvoir en extraire des
informations (par XPATH ou en me déplacant noeud par noeud, par tagname...)
Existe t-il une librairie "éprouvée" pour faire ça simplement ?
Je n'ai rien trouvé de très probant sur php.net
Ah bon ?
http://fr.php.net/manual/fr/book.dom.php ça ne te plait pas ?
Il y a même http://fr.php.net/manual/fr/class.domxpath.php
Alain BARTHE
2010-03-10 14:35:00 UTC
Permalink
Post by Olivier Masson
Post by Alain BARTHE
Bonjour,
Je voudrais analyser le contenu d'une page HTML exterieure depuis PHP.
Je cherche une librairie permettant de charger le code de cette page,
(sous la forme d'un DOM par exemple), pour pouvoir en extraire des
informations (par XPATH ou en me déplacant noeud par noeud, par tagname...)
Existe t-il une librairie "éprouvée" pour faire ça simplement ?
Je n'ai rien trouvé de très probant sur php.net
Ah bon ?
Il est vrai que je suis loin d'être expert en PHP et que j'ai encore du
mal a trouver la bonne info sur le site...
Post by Olivier Masson
http://fr.php.net/manual/fr/book.dom.php ça ne te plait pas ?
Il y a même http://fr.php.net/manual/fr/class.domxpath.php
Je connaissais l'existence de DOMDocument que j'avais utilisé pour
parser du XML, mais les pages que je veux analyser ne sont pas en XHTML,
et je ne suis pas sur que le document soit valide au sens XML.

J'admets que j'aurais du au moins essayer de lire mon document avec
cette librairie...

La librairie Tidy indiquée dans le mail suivant me semble plus proche de
mes besoins (pour avoir utilisé la commande Linux tidy). A confirmer.

Entre temps j'ai trouvé la librairie simple_html_dom qui a l'air de
correspondre a mes besoin, même si elle est un peu lente pour parser des
documents un peu longs.

En tout cas, merci pour vos conseils.
Alain BARTHE
2010-03-10 14:35:00 UTC
Permalink
Post by Olivier Masson
Post by Alain BARTHE
Bonjour,
Je voudrais analyser le contenu d'une page HTML exterieure depuis PHP.
Je cherche une librairie permettant de charger le code de cette page,
(sous la forme d'un DOM par exemple), pour pouvoir en extraire des
informations (par XPATH ou en me déplacant noeud par noeud, par tagname...)
Existe t-il une librairie "éprouvée" pour faire ça simplement ?
Je n'ai rien trouvé de très probant sur php.net
Ah bon ?
http://fr.php.net/manual/fr/book.dom.php ça ne te plait pas ?
Il y a même http://fr.php.net/manual/fr/class.domxpath.php
Re,

Il me manque décidément encore un peu d'expérience en PHP pour trouver
les bonnes infos.....

J'ai regardé un peu plus en détail la classe DOMDocument, qui possède la
méthode LoadHTML qui semble correspondre parfaitement à mes besoins
(elle accepte un document HTML pas forcément bien formé).


Merci encore, avec mes excuses pour le dérangement.
Olivier Masson
2010-03-10 22:08:41 UTC
Permalink
Post by Alain BARTHE
J'ai regardé un peu plus en détail la classe DOMDocument, qui possède la
méthode LoadHTML qui semble correspondre parfaitement à mes besoins
(elle accepte un document HTML pas forcément bien formé).
Merci encore, avec mes excuses pour le dérangement.
Ben non, ça dérange, c'est fait pour ça :)

jef80
2010-03-09 22:52:32 UTC
Permalink
librairie Tidy à http://tidy.sourceforge.net/docs/quickref.html
Post by Alain BARTHE
Bonjour,
Je voudrais analyser le contenu d'une page HTML exterieure depuis PHP.
Je cherche une librairie permettant de charger le code de cette page,
(sous la forme d'un DOM par exemple), pour pouvoir en extraire des
informations (par XPATH ou en me déplacant noeud par noeud, par tagname...)
Existe t-il une librairie "éprouvée" pour faire ça simplement ?
Je n'ai rien trouvé de très probant sur php.net
Alain BARTHE
2010-03-10 14:35:00 UTC
Permalink
Post by jef80
librairie Tidy à http://tidy.sourceforge.net/docs/quickref.html
Merci, je l'essaye de ce pas.
Post by jef80
Post by Alain BARTHE
Bonjour,
Je voudrais analyser le contenu d'une page HTML exterieure depuis PHP.
Je cherche une librairie permettant de charger le code de cette page,
(sous la forme d'un DOM par exemple), pour pouvoir en extraire des
informations (par XPATH ou en me déplacant noeud par noeud, par tagname...)
Existe t-il une librairie "éprouvée" pour faire ça simplement ?
Je n'ai rien trouvé de très probant sur php.net
Continuer la lecture sur narkive:
Loading...