php模拟登陆的实现方法分析
发布:smiling 来源: PHP粉丝网 添加日期:2021-05-08 10:38:35 浏览: 评论:0
这篇文章主要介绍了php模拟登陆的实现方法,实例分析了snoopy与curl两种实现方法,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例分析了php模拟登陆的实现方法。分享给大家供大家参考。具体分析如下:
php模拟登陆的实现方法,这里分别列举两种方法实现模拟登陆人人网。具体实例代码如下:
1)使用snoopy模拟登陆:
- <?php
- set_time_limit(0);
- require "Snoopy.class.php";
- $snoopy=new Snoopy();
- $snoopy->referer='https://www.phpfensi.com/';
- $snoopy->agent="Mozilla/5.0 (Windows NT 6.1; rv:22.0) Gecko/20100101 Firefox/22.0";
- $submit_vars['email'] ='登陆账号';
- $submit_vars['password'] ='登陆密码';
- $url='https://www.phpfensi.com/test/Login.php';//登陆数据提交的URL地址
- $snoopy->submit($url,$submit_vars);
- $snoopy->fetch("https://www.phpfensi.com/");//希望获取的页面数据
- echo $snoopy->results;//m.phpfensi.com
2)使用curl模拟登陆:
- <?php
- set_time_limit(0);
- $cookie_file=tempnam('./tmp','cookie');//tmp目录需要先建立好
- $ch=curl_init();
- $login_url='https://www.phpfensi.com/PLogin.do';
- $curlPost="email=登陆账号&password=登陆密码";
- curl_setopt($ch,CURLOPT_URL,$login_url);
- //启用时会将头文件的信息作为数据流输出
- curl_setopt($ch,CURLOPT_HEADER,0); //设定是否输出页面内容
- curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
- curl_setopt($ch,CURLOPT_POST,1); //设置请求发送方式,post或get,CURLOPT_POST或CURLOPT_GET
- curl_setopt($ch,CURLOPT_POSTFIELDS,$curlPost);
- curl_setopt($ch,CURLOPT_COOKIEJAR,$cookie_file); //保存cookie
- curl_exec($ch);
- curl_close($ch);
- $ch=curl_init();
- $login_url2="https://www.phpfensi.com/";
- curl_setopt($ch,CURLOPT_URL,$login_url2);
- curl_setopt($ch,CURLOPT_HEADER,0);
- curl_setopt($ch,CURLOPT_RETURNTRANSFER,0);
- curl_setopt($ch,CURLOPT_COOKIEFILE,$cookie_file); //读取cookie
- curl_exec($ch);
- curl_close($ch);
Tags: php模拟登陆
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)