Je souhaite télécharger des images à partir d'une page Web, par exemple www.yahoo.com, et les stocker dans un dossier en utilisant PHP.Téléchargement de plusieurs images en utilisant PHP cURL
Je reçois la source de la page en utilisant file_get_contents() et en extrayant la balise img src. Je passe ce src au code cURL. Le code ne donne aucune erreur, mais les images ne sont pas téléchargées. S'il vous plaît vérifier le code. Je ne comprends pas où je vais mal.
<?php
$html = file_get_contents('www.yahoo.com');
$ptn = '/< *img[^>]*src *= *["\']?([^"\']*)/i';
preg_match_all($ptn, $html, $matches, PREG_PATTERN_ORDER);
$seq = 1;
foreach($matches as $img)
{
$fp = fopen("root/Images/image_$seq.jpg", 'wb');
$ch = curl_init ($img);
curl_setopt($ch,CURLOPT_FILE, $fp);
curl_setopt($ch,CURLOPT_URL, $img);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
$image = curl_exec($ch);
curl_close($ch);
fwrite($fp, $image);
fclose($fp);
$seq++;
}
echo "IMAGES DOWNLOADED";
?>