php代码如下
//参数1:访问的URL,参数2:post数据(不填则为GET),参数3:提交的$cookies,参数4:是否返回$cookies
functioncurl_request($url,$post='',$cookie='',$returnCookie=0){
$curl=curl_init();
curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($curl,CURLOPT_URL,$url);
curl_setopt($curl,CURLOPT_USERAGENT,'Mozilla/5.0(compatible;MSIE10.0;WindowsNT6.1;Trident/6.0)');
curl_setopt($curl,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($curl,CURLOPT_AUTOREFERER,1);
curl_setopt($curl,CURLOPT_REFERER,"http://XXX
");
if($post){
curl_setopt($curl,CURLOPT_POST,1);
curl_setopt($curl,CURLOPT_POSTFIELDS,http_build_query($post));
}
if($cookie){
curl_setopt($curl,CURLOPT_COOKIE,$cookie);
}
curl_setopt($curl,CURLOPT_HEADER,$returnCookie);
curl_setopt($curl,CURLOPT_TIMEOUT,10);
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
$data=curl_exec($curl);
if(curl_errno($curl)){
returncurl_error($curl);
}
curl_close($curl);
if($returnCookie){
list($header,$body)=explode("\r\n\r\n",$data,2);
preg_match_all("/Set\-Cookie:([^;]*);/",$header,$matches);
$info['cookie']=substr($matches[1][0],1);
$info['content']=$body;
return$info;
}else{
return$data;
}
}
//
$url='https://login.nipic.com/
';
$post['username']="";
$post['userpass']="";
$post['imgCode']="";
$result=curl_request($url);
模拟登陆post数据徐要填写__RequestVerificationToken:这个值,能获取到,但是每刷新一次都会变!
比如$result=curl_request($url);通过这个方法获取到了__RequestVerificationToken这个值,准备填写好账号密码又通过这个方法$result=curl_request($url,$username,$pwd);提交的时候,__RequestVerificationToken这个值又刷新变了新的了。。
分 -->
|