glibre Posté 16 Juin 2005 Posté 16 Juin 2005 Bonjour, je cherche a recuperer la description d'un site... voila un code trouvé sur le net, qui marche bien pour le titre... mais pas la descript: function getdescription(){ $url = $_GET["url"]; $fp = fopen($url,"r"); //lecture du fichier while (!feof($fp)) { //on parcourt toutes les lignes $page .= fgets($fp, 4096); // lecture du contenu de la ligne } $titre = eregi("<meta name=\"description\" content=" (.*)" />",$page,$regs); echo '<b>Description:</b> '.$regs[1].''; fclose($fp); } cela retourne rien du tout une idée? merci d'avance
glibre Posté 16 Juin 2005 Auteur Posté 16 Juin 2005 ok j'ai rien ecrit Descriptionarray get_meta_tags ( string filename , bool use_include_path ) get_meta_tags ouvre le fichier filename et l'analyse ligne par ligne à la recherche de balises <meta>. Le fichier peut être un fichier local ou une URL . L'analyse cesse lors de la rencontre de la balise </head> . En donnant la valeur de TRUE au paramètre optionnel use_include_path fera que get_meta_tags recherchera aussi le fichier dans l' include_path . Exemple de balise meta <meta name="author" content="name"> <meta name="keywords" content="php documentation"> <meta name="DESCRIPTION" content="a php manual"> <meta name="geo.position" content="49.33;-86.59"> </head> de quoi me mettre une baffe
enroc Posté 16 Juin 2005 Posté 16 Juin 2005 Salut déjà tu peux utiliser file() et join() qui sont d'une syntaxe plus courte $url = "http://www.webmaster-hub.com/";$file = join("", file($url));$search = "#<meta name=\"description\" content=\"(.*)\"[^>]*>#Ui";preg_match($search, $file, $result);echo $result[1]; Cette expression n' attrapera que les balises dont les paramètre sont entre " (double quote) et séparés par un seul espace. La fin de la balise peut être n'importe quoi. Bon courage pour les expressions régulières
enroc Posté 16 Juin 2005 Posté 16 Juin 2005 Ouah ! Cool la fonction get_meta_tags() ! Je connaissais pas !
Dan Posté 16 Juin 2005 Posté 16 Juin 2005 <?php $metas = get_meta_tags('http://www.webmaster-hub.com/'); print $metas['description']; ?> C'est bien plus simple comme ça
FruitDeFendu Posté 16 Juin 2005 Posté 16 Juin 2005 <?php $metas = get_meta_tags('http://www.webmaster-hub.com/'); print $metas['description']; ?> C'est bien plus simple comme ça <{POST_SNAPBACK}> mdr dan il a tjs la meilleur solution a tous les problèmes
Dan Posté 16 Juin 2005 Posté 16 Juin 2005 Il faut reconnaître que glibre avait trouvé tout seul avant mon post
glibre Posté 16 Juin 2005 Auteur Posté 16 Juin 2005 lol je merite quand meme qu'on me fouette ... une simple recherche sur metatag + php \_/ et hop! je chercher comme un ane "description"
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant