跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

curl 模拟登录 实现教程

curl模拟登录 实现教程模拟登陆 126邮箱,人人网等 根据需要自行修改哈,代码如下//模拟登陆 验证码的网站,首先获取验证码图片的cookie define('SCRIPT_ROOT',dirname(__FILE__).'/');$cookieFile = SCRIPT_ROOT.'cookie.tmp';/*模拟浏览器*/$user_agent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.1.4322)";//这里如果知道了cookie可直接发送到目标浏览器//$cookie = "lang=zh-cn; JSESSIONID=6AF7DA3F6A5FC3ECA39A7485C3FDBBAE";$header = array ("Host:login.biuman.com","Referer: http://www.biuman.com",);//验证码图片的url function getCookie($url){global $cookieFile;$curl = curl_init (); // 启动一个CURL会话判断邮箱是否合法类判断邮箱是否合法类下载curl_setopt ( $curl, CURLOPT_URL, $url ); // 要访问的地址curl_setopt ( $curl, CURLOPT_SSL_VERIFYPEER, 0 ); // 对认证证书来源的检查curl_setopt ( $curl, CURLOPT_SSL_VERIFYHOST, 1 ); // 从证书中检查SSL加密算法是否存在curl_setopt ( $curl, CURLOPT_HTTPGET, 1 ); // 发送一个常规的GET请求curl_setopt($curl,CURLOPT_COOKIEJAR, $cookieFile); // 把返回来的cookie信息保存在文件中$res = curl_exec($curl);curl_close($curl);}function login($url){global $cookieFile,$header,$agent;$data = array('name'=>'biuman');$curl = curl_init (); // 启动一个CURL会话curl_setopt ( $curl, CURLOPT_URL, $url ); // 要访问的地址curl_setopt ( $curl, CURLOPT_SSL_VERIFYPEER, 0 ); // 对认证证书来源的检查curl_setopt ( $curl, CURLOPT_SSL_VERIFYHOST, 1 ); // 从证书中检查SSL加密算法是否存在curl_setopt ( $curl, CURLOPT_USERAGENT, $agent ); // 模拟用户使用的浏览器curl_setopt($curl, CURLOPT_HTTPHEADER, $header); //设置头信息的地方@curl_setopt ( $curl, CURLOPT_FOLLOWLOCATION, 1 ); // 使用自动跳转//curl_setopt ( $curl, CURLOPT_HTTPGET, 1 ); // 发送一个常规的GET请求curl_setopt ( $curl, CURLOPT_POST, 1 ); // 发送一个常规的Post请求curl_setopt ( $curl, CURLOPT_POSTFIELDS, $data ); // Post提交的数据包//curl_setopt ( $curl, CURLOPT_COOKIE, $cookie); // 直接发送cookie内容curl_setopt($curl,CURLOPT_COOKIEFILE, $cookieFile); //发送Cookie文件curl_setopt ( $curl, CURLOPT_TIMEOUT, 120 ); // 设置超时限制防止死循环curl_setopt ( $curl, CURLOPT_HEADER, 0 ); // 不显示返回的Header区域内容curl_setopt ( $curl, CURLOPT_RETURNTRANSFER, 1 ); // 获取的信息以文件流的形式返回$res = curl_exec ( $curl ); // 执行操作if (curl_errno ( $curl )) {return '失败:Errno' . curl_error ( $curl );}curl_close ( $curl ); // 关闭CURL会话return $res;}//1.

$auth_url = "http://www.biuman.com/auth";getCookie($auth_url); //获取验证码cookie//2.

$url = 'http://www.biuman.com/home'; //登陆之后提交的url$res = login($url);print_r($res);

相关文章