2014-04-24 6 views
0
function get_data($url,$proxy=Null){ 
     $agents = array(
      'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:7.0.1) Gecko/20100101 Firefox/7.0.1', 
      'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.9) Gecko/20100508 SeaMonkey/2.0.4', 
      'Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)', 
      'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; da-dk) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1' 

     );  
      $header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,"; 
      $header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"; 
      $header[] = "Cache-Control: max-age=0"; 
      $header[] = "Connection: keep-alive"; 
      $header[] = "Keep-Alive: 300"; 
      $header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"; 
      $header[] = "Accept-Language: en-us,en;q=0.5"; 
      $header[] = "Pragma: "; 

$curl = curl_init(); 
     curl_setopt($curl, CURLOPT_HTTPPROXYTUNNEL, 1); 
     curl_setopt($curl, CURLOPT_HTTPHEADER, $header); 
     curl_setopt($curl,CURLOPT_USERAGENT,$agents[array_rand($agents)]); 
     curl_setopt($curl, CURLOPT_REFERER, "http://google.com/"); 
     curl_setopt($curl, CURLOPT_URL, $url); 
     curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE); 
     curl_setopt($curl, CURLOPT_FOLLOWLOCATION, TRUE); ///** Follow Redirect 
     $html1 = curl_exec($curl); 
     curl_close($curl); 
     return $html1; 
} 

Au-dessus est ma fonction et je tente d'obtenir une page du site proxyPhp CURL pour travailler avec les cookies et la session

echo get_data('http://www.hostfast.info/browse.php?u=lZpnCp2dHRM0%2BnBp1Ljfmr8I%2BA%3D%3D&b=5'); 

Mais cela ne fonctionne pas .... sa me donnant page d'accueil de ce site et si j'essaie de nouvelles recherches c'est aussi ne fonctionne pas ... je suis nouveau à CURL ... mais je pense qu'il y a quelque chose à faire avec les cookies ... comment puis-je résoudre ce problème

thx

Répondre

0
define('POSTURL', 'http://hostfast.info/includes/process.php?action=update'); 
define('POSTVARS', 'u=google.com/complete/search?output=toolbar&q=love'); // POST VARIABLES TO BE SENT 

$ch = curl_init(POSTURL); 
curl_setopt($ch, CURLOPT_POST  ,1); 
curl_setopt($ch, CURLOPT_POSTFIELDS ,POSTVARS); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION ,1); 
curl_setopt($ch, CURLOPT_HEADER  ,0); // DO NOT RETURN HTTP HEADERS 
curl_setopt($ch, CURLOPT_RETURNTRANSFER ,1); // RETURN THE CONTENTS OF THE CALL 
curl_setopt($ch, CURLOPT_COOKIEFILE, "yourcookiefile.txt"); 
curl_setopt($ch, CURLOPT_COOKIEJAR, "yourcookiefile.txt"); 
$Rec_Data = curl_exec($ch); 


curl_close($ch); 


echo $Rec_Data; 

Cela fonctionne ..;)

1

Pour enregistrer le cookie dans cURL avec PHP :

curl_setopt($curl, CURLOPT_COOKIEFILE, "yourcookiefile.txt"); 
curl_setopt($curl, CURLOPT_COOKIEJAR, "yourcookiefile.txt"); 
+0

Salut j'ai essayé mais aussi DonT travail :( – Harinder

+0

Votre travail de lien dans le navigateur (Pour moi, il retourne la page d'accueil)? Vous pouvez tester n'importe quelle boucle sans php par exemple dans l'extension Postman de Google Chrome pour simuler des requêtes post/get avec des en-têtes et des champs, vous obtiendrez le même résultat. Aussi dans firefox Poster plugin mais c'est pire. –

+0

ce lien ne fonctionne que d'un seul navigateur comme il stocker des cookies ou session dans ce navigateur si vous copiez et passé dans un autre navigateur, il ne fonctionnera pas .. :( – Harinder