Oui, oui, je connais l'utilisateur et le mot de passe.Comment faire pour récupérer en masse des pages d'un site Web derrière l'authentification en PHP
J'ai besoin de truc en php pour me connecter à un site web et récupérer des images/contenus, comme un site web normal.
De toute évidence, avec une curl o file_get_contents, cela ne fonctionne pas car je ne suis pas authentifié.
Comment je peux faire?
L'authentification est une authentification HTTP normale avec POST.
Modifier: ok merci pour l'aide cela fonctionne!
code postal Je travaille ici pour référence future
//login and set cookie
$curl = curl_init();
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_COOKIEFILE, "cookiefile");
curl_setopt($curl, CURLOPT_COOKIEJAR, "cookiefile"); # SAME cookiefile
curl_setopt($curl, CURLOPT_URL, "url in which there is the login form");
curl_setopt($curl, CURLOPT_POSTFIELDS, "user=test&password=test&someparam=somevalue"); //put here the post/get values
$output = curl_exec($curl);
echo $output;
//finally fetch my content
curl_setopt($curl, CURLOPT_URL, $url_to_fetch);
$output = curl_exec($curl);
echo $output;
curl_close ($curl);
Avez-vous besoin de faire cela par programme en utilisant PHP. Sinon, essayez d'utiliser wget ou similaire. Quel type d'authentification le site utilise-t-il? Un formulaire HTML ou une authentification de base HTTP, ou quelque chose de plus exotique? – fmark