Rechercher texte de la source d'une page web

[Résolu]
Signaler
Messages postés
259
Date d'inscription
samedi 13 décembre 2003
Statut
Membre
Dernière intervention
22 novembre 2010
-
Messages postés
259
Date d'inscription
samedi 13 décembre 2003
Statut
Membre
Dernière intervention
22 novembre 2010
-
Bonjour tout le monde,


Voila je cherche a pouvoir lire la page source d'une page quelconque et lire ensuite ce qu'il y'a entre les balises title.

Je sais que je dois utiliser les regexpr mais je ne vois pas comment lire entre des balises.


J'ai cherche aussi pour faire une boucle de tel (<title>) mot a
tel mot (</title>) mais je n'arrive pas a le mettre au point.


Pourriez-vous m'aider s'il vous plait ?


Merci

6 réponses

Messages postés
510
Date d'inscription
lundi 27 novembre 2006
Statut
Membre
Dernière intervention
5 juillet 2009
3
Salut !

De tete, je dirais que ca peut se faire en deux temps :

$title = preg_grep ("!<title>.*</title>!", $pagesource);
// on récupere tout, de <title> à </title>

$title = preg_replace ("!</?title>!",'', $title);
// on remplace les balises par null

Je garanti pas 100% la validité du code... mais ce sera un début de piste pour chercher ;)
Messages postés
259
Date d'inscription
samedi 13 décembre 2003
Statut
Membre
Dernière intervention
22 novembre 2010
2
Bien sachant que des personnes aident et d'autres non, moi je fourni ma façon de faire.

<?php
    $file = "http://www.allocine.fr/film/fichefilm_gen_cfilm=109640.html";
    $pagesource = file($file);
    while(list($cle,$val) = each($pagesource))
    {
        if (preg_match("/<title>/i", $val))
        {
            $patterns[0] = '!<title>!';
            $patterns[1] = '!</?title>!';
            $replacements[0] = '';
            $replacements[1] = '';
            echo 'Le titre du film que vous avez demandé : '.preg_replace($patterns, $replacements, $val);
      }
    }
?>

Voilà cette source vous donnera le titre exact d'un film d'une toute autre page web venant de allocine ici.

Une petite explication :
<ol><li>la variable $file prend en compte une valeur quelconque ici forcément un string pour une adresse ce qui va me p
</li><li>La deuxième ligne va me pettre de lire l'adresse et de la mettre dans un tableau</li><li>Ensuite j'effectue une boucle de chaque "case" du tableau jusqu'a la fin de mon tableau</li><li>Dans cette boucle si je "match" le mot "<title>" (le /i permet de ne pas prendre en compte la casse) alors il va executer ce qui se trouve dans le if</li><li>Pour la compréhension du if rien de difficile il remplace les mots <title> et </title> par "rien" puis ensuite écrit ce que je souhaite.</li><li>Voilà c'est tout </li><li>Une dernière chose ce code c'est pas optimisé, il faudrait par exemple que vous arrêtiez de lire la page source si vous avez lu ce que vous souahitez, cela ne sert à rien de continuer. Et vous avez encore d'autres choses à modifier si vous le souhaitez.
</li></ol>Ah oui pour [auteurdetail.aspx?ID=551996 vilhjalms] si j'ai posé cette question c'est parceque tout simplement le moteur de recherche n'a rien donné...

Et merci [auteurdetail.aspx?ID=921081 Bling 182] pour m'avoir aidé dans ma quête .

@+
Messages postés
259
Date d'inscription
samedi 13 décembre 2003
Statut
Membre
Dernière intervention
22 novembre 2010
2
Merci beaucoup :)

Je vais tester cela dés que j'aurais pris le temps de tout mettre en place :)

Merci beaucoup !

@+
Messages postés
591
Date d'inscription
mercredi 20 juillet 2005
Statut
Membre
Dernière intervention
16 juillet 2009
2
Saell og blesuð

Beaucoup de source existe concernant ce type de problème ainsi que de réponses sur ce forum et autres
Cherchez un peu


Vilhjálms
Sigurðsdóttir aka Frëyjá
Messages postés
591
Date d'inscription
mercredi 20 juillet 2005
Statut
Membre
Dernière intervention
16 juillet 2009
2
Saell og blesuð

Et google vous l'oubliez ? ou ne ne serait ce qu'un strip_tags() cf http://fr.php.net/manual/fr/function.strip-tags.php


Vilhjálms
Sigurðsdóttir aka Frëyjá
Messages postés
259
Date d'inscription
samedi 13 décembre 2003
Statut
Membre
Dernière intervention
22 novembre 2010
2
Merci pour ton lien mais bon le gros avertissement m'avertit bien qu'il n'est pas encore conseillé de le faire.
Ensuite oui rechercher sur google j'ai fait aussi mais encore faut-il savoir quoi rechercher...

@+