Im utilizando curl a través de php para buscar una url. Con éxito puedo descargar la página, los encabezados y todo. Sin embargo, las cookies devueltas por cualquier página no se guardan en el archivo especificado. He revisado permisos, etc., y nada parece fuera de lo común. Estoy empezando a pensar que algo no funciona en mi código.¿Cómo guardo las cookies de una respuesta a una solicitud de cURL utilizando php?
$get_cookie_page = 'http://www.google.ca';
echo curl_download($get_cookie_page);
function curl_download($Url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $Url);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
$http_headers = array(
'Host: www.google.ca',
'User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0.2) Gecko/20100101 Firefox/6.0.2',
'Accept: */*',
'Accept-Language: en-us,en;q=0.5',
'Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7',
'Connection: keep-alive'
);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $http_headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$output = curl_exec($ch);
curl_close($ch);
return $output;
}
Cualquier ayuda apreciada.
Su código se ve bien - ¿está seguro al 1000% de que hay algunas cookies para guardar? – DaveRandom
Curl no escribirá las cookies de sesión en el archivo, solo las permanentes. –
@DaveRandom: Sí, hay cookies para guardar. –