Recupartion url php

Bonjour,

j'ai essayer de faire une page php qui recuperer les url du moteur de recherche
mes le probleme c est qui ne recuperer pas tous les url
pouvez vous m'aidez si vous plaits.

merci

voici le code source.

<?php
$url = "https://www.bing.com/search?q=perso&filt=all&first=11&toHttps=1&redig=1CB71F32432B4EEFA166580FCF61886B";
$ada = fopen ($url, "r");

$source = "";
while (!feof($ada)){
$source .= fgets ($ada, 4096);

$sourcea = $source;

$sourcea = strstr ($sourcea, "href=\"http://"); //on cherche http ...

$var_string_exp = explode("\"",$sourcea);
$var_string_exp2 = array_slice($var_string_exp, 0,2);
$sourcea = implode("\"",$var_string_exp2);
if ($sourcea !== ""){
$source = str_replace ($sourcea,"888",$source);
$sourcea = str_replace ("href=\""," ",$sourcea);
$sourcea = htmlspecialchars($sourcea);
echo $sourcea;
echo "<br />";
}
}
fclose($ada); //on ferme la connexion

?>

merci de votre aide
Configuration: Windows XP Internet Explorer 7.0

9 réponses

  1. salut elghafoud

    le probleme c est qu il affiche seulement une url
    0
    1. quesqu il faut faire pour recuperer toutes les url
      le probeme c est qui ne recupere que une seul url
      j ai essayer de faire des boucle avec while mes je ni arrive pas

      aidez moi si vous plait.
      0
      1. bonjour a tous
        esque qu elle qu un peu m aider

        svp pitie
        0
        1. 1. Utilises file_get_contents ou curl pour récupérer la source.
          2. Pour récupérer toutes les url, je penses qu'un format XML serait mieux : prends le flux RSS en ajoutant "&format=rss" à la fin de l'url
          3. Utilises DOM ou SimpleXMLElement pour lister.
          <?php
          $recherche = 'perso';
          $url = 'http://www.bing.com/search?q='.urlencode($recherche).'&format=rss';
          $source = file_get_contents($url);
          
          $xml = new SimpleXMLElement($source);
          foreach($xml->channel->item as $ligne) {
          	echo '<a href="'.$ligne->link.'">'.$ligne->title.'</a><br />';
          }
          ?>
          0
          1. bonjour

            merci pour ton aide mes j ai trouvez un solution plus simple

            par contre j ai un autre probleme j essaye de faire un mailing mes je ni arrive pas voici le code

            <?php
            // nom de fichier sendmessage.php3
            $a= 0;
            $message = "dede ca marche";
            $titre="Mailing TEST"; // titre de lemail
            $expediteur="jean.derlote@laposte.net";
            $message=nl2br(htmlspecialchars($message));

            $entete="From: ".$expediteur."\n"; //en tete, ne pa modifier
            $file = "fichier_test.txt";
            $url = fopen ($file, "r");

            while (!feof($url)){
            $email = fgets ($url, 1024);
            mail($email,$titre,$message,$entete);
            $a++;

            }
            echo $a;
            ?>

            merci d avance de ton aide
            0
            1. La variable $email est définie nul part.
              Il y a peut-être d'autres erreurs, je n'ai pas regardé plus loin.
              0
              1. j ai resolu le probleme mes il y a maintenant un autre probleme c est qu il est tres tres tres long
                0
                1. Ça ne vient pas du script, donc ...
                  0