Php,moteur d'indexation

Résolu
samya3434 -  
 samya3434 -
Bonjour,
mon objectif et de récupérer et affichier touts les liens hypertextes d'une page html , pour ça mon code est le suivant:
<?php

if (isset($_POST['search']))
{

$_POST['search'] = htmlspecialchars($_POST['search']); // On rend inoffensives les balises HTML que le visiteur a pu rentrer
$src = file_get_contents($_POST['search']);
//for($i=0; $i< 10; $i++){
$out=array();
preg_match_all('!<a href="(.+)"!isU', $src, $out);


echo ('cette page contient les 10 premiers liens suivant :<br/>');

for ($i = 0; $i < 10; $i++) {


echo (' '.$out[1][$i]. '<br/>');


//$_result[i]=$out[1][$i];
}

}

?>
le problème c'est que ce code ne récupère pas les liens hypertextes de toutes les pages sauf quelques une à savoir google ...

Aidez moi SVP



A voir également:

3 réponses

tryan44 Messages postés 1288 Date d'inscription   Statut Membre Dernière intervention   220
 
Salut,

Vous êtes sures que tout les liens de la page scanné contient bien (<a href="")...ce qui pourrait expliquer ce résultat...?
0
samya3434
 
Oui c'est vrai qu'il existent d'autres liens qui n'ont pas la meme forme que <a href=..

ça me sera très utile si vous connaissez une façon pour récupérer tous les liens de n'importe quelle page html ou web
0
tryan44 Messages postés 1288 Date d'inscription   Statut Membre Dernière intervention   220
 
Je pense qu'il faut changer le masque et faire une recherche sur le "http" mais je n'en suis pas sûre non plus .
preg_match_all('!http://(.+)!isU', $src, $out); 

ou
$motif='#http://(.*?) #is';
preg_match_all($motif,$src,$out);
0
samya3434
 
j'ai essaié celà mais ça n'as pas marche , désolée..
main en fait j'ai trouve une autre méthode pour le faire à l'aide de la bibliothèque simple html dom ^^
0