Matin tout,En utilisant CURL dans une boucle pour télécharger un fichier, on travaille 1er, 2e fois sur
J'utilise curl pour télécharger un fichier image dans une boucle. La première fois, ça marche bien et je vois l'image apparaître dans le répertoire.
La deuxième fois, il échoue avec un délai d'attente, bien qu'il s'agisse d'une URL valide.
Quelqu'un peut-il suggérer pourquoi il échoue toujours à la deuxième fois et comment le réparer?
Le bout de code est:
// download image
$extension = "gif";
$ch = curl_init();
curl_setopt($ch, CURLOPT_TIMEOUT, 90);
curl_setopt($ch, CURLOPT_URL, $imgurl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
echo $imgurl . " attempting to open URL ";
$i = curl_exec($ch);
if ($i==false) {
echo curl_errno($ch).' '.curl_error($ch);
}
$image_name=time().'.'.$extension;
$f = fopen('/fulldirectorypath/' . $image_name ,'w+');
fwrite($f,$i);
fclose($f);
J'ai mis un écho là-bas pour afficher la imgURL de $, pour vérifier qu'il est valide, et fait monter le délai d'attente à 90 secondes, mais il échoue encore. Voilà ce que je vois à l'écran:
http://images.eu-xmedia.de/thumbnails/34555861/5676051/pt=pic,lang=2,origfile=yes/image.gif tentative d'ouverture URL 28 Opération a expiré après 90 secondes avec 0 octets reçus
un fichier vide est créé dans mon répertoire.
merci beaucoup,
Greg
J'ai essayé un sommeil de 60 secondes, mais j'ai toujours le même problème ... – kitenski