PHP获取Cookie模拟登录

发布时间:2020-08-02 01:35:57 作者:gutaotao1989
来源:网络 阅读:612

一、定义Cookie存储路径


必须使用绝对路径

$cookie_jar = dirname(__FILE__)."/pic.cookie";


//$cookie_file = dirname(__FILE__).'/cookie.txt';

//$cookie_file = tempnam("tmp","cookie");


二、获取Cookie

$url = "http://1.2.3.4/";

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_HEADER, 0);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);

$content = curl_exec($ch);

curl_close($ch);


三、模拟浏览器获取验证码

服务器验证码有漏洞,可以自己指定

取出cookie,一起提交给服务器,让服务器以为是浏览器打开登陆页面

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'http://1.2.3.4/getCheckpic.action?rand=6836.185874812305');

curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar);

curl_setopt($ch, CURLOPT_HEADER, 0);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$ret = curl_exec($ch);

curl_close($ch);


四、POST提交

$post = "name=2&userType=1&passwd=asdf&loginType=1&rand=6836&p_w_picpathField.x=25&p_w_picpathField.y=7";    

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "http://1.2.3.4/loginstudent.action");

curl_setopt($ch, CURLOPT_HEADER, false);

curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);

curl_setopt($ch, CURLOPT_POSTFIELDS, $post);

curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar);

$result=curl_exec($ch);

curl_close($ch);


五、到指定页面获取数据

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "http://1.2.3.4/accountcardUser.action");

curl_setopt($ch, CURLOPT_HEADER, false);

curl_setopt($ch, CURLOPT_HEADER, 0);

curl_setopt($ch, CURLOPT_RETURNTRANSFER,0);        

curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar);

$html=curl_exec($ch);

// var_dump($html);

curl_close($ch);


推荐阅读:
  1. PHP模拟登录并获取数据
  2. PHP CURL获取cookies模拟登录的方法

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php cookie 获取cookie

上一篇:Android 学习笔记--android基本

下一篇:win7+iis7.5+vs2010 错误代码 0x80070002

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》