php模拟登陆的实现方法分析


Posted in PHP onJanuary 09, 2015

本文实例分析了php模拟登陆的实现方法。分享给大家供大家参考。具体分析如下:

php模拟登陆的实现方法,这里分别列举两种方法实现模拟登陆人人网。具体实例代码如下:

1)使用snoopy模拟登陆:

<?php

set_time_limit(0);

require "Snoopy.class.php";

$snoopy=new Snoopy();

$snoopy->referer='https://3water.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://3water.com/test/Login.php';//登陆数据提交的URL地址

$snoopy->submit($url,$submit_vars);

$snoopy->fetch("https://3water.com/");//希望获取的页面数据

echo $snoopy->results;//m.3water.com

2)使用curl模拟登陆:
<?php

set_time_limit(0);

$cookie_file=tempnam('./tmp','cookie');//tmp目录需要先建立好

$ch=curl_init();

$login_url='https://3water.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://3water.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);

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP配置文件中最常用四个ini函数
Mar 19 PHP
php header()函数使用说明
Jul 10 PHP
PHP写杨辉三角实例代码
Jul 17 PHP
php对二维数组按指定键值key排序示例代码
Nov 26 PHP
ThinkPHP中U方法的使用浅析
Jun 13 PHP
PHP程序中使用adodb连接不同数据库的代码实例
Dec 19 PHP
Laravel 5.1 on SAE环境开发教程【附项目demo源码】
Oct 09 PHP
php使用file函数、fseek函数读取大文件效率对比分析
Nov 04 PHP
PHP的PDO大对象(LOBs)
Jan 27 PHP
PHP使用ActiveMQ实现消息队列的方法详解
May 31 PHP
PHP的new static和new self的区别与使用
Nov 27 PHP
php ActiveMQ的安装与使用方法图文教程
Feb 23 PHP
php获取四位字母和数字的随机数的实现方法
Jan 09 #PHP
php实现读取手机客户端浏览器的类
Jan 09 #PHP
ucenter通信原理分析
Jan 09 #PHP
PHP上传文件时自动分配路径的方法
Jan 09 #PHP
PHP中new static() 和 new self() 的区别介绍
Jan 09 #PHP
PHP中的替代语法介绍
Jan 09 #PHP
php获取客户端电脑屏幕参数的方法
Jan 09 #PHP
You might like
PHP中func_get_args(),func_get_arg(),func_num_args()的区别
2013/09/30 PHP
PHP面向对象教程之自定义类
2014/06/10 PHP
JS中彻底删除JSON对象组成的数组中的元素
2020/09/22 PHP
js中parseFloat(参数1,参数2)定义和用法及注意事项
2013/01/27 Javascript
JS实现上下左右对称的九九乘法表
2016/02/22 Javascript
基于javascript实现泡泡大冒险网页版小游戏
2016/03/23 Javascript
老生常谈js动态添加事件--- 事件委托
2016/07/19 Javascript
jQuery遍历节点树方法分析
2016/09/08 Javascript
JS常用算法实现代码
2016/11/14 Javascript
浅析JavaScript的几种Math函数,random(),ceil(),round(),floor()
2016/12/22 Javascript
Angular指令之restict匹配模式的详解
2017/07/27 Javascript
nodeJs爬虫的技术点总结
2018/05/13 NodeJs
JS实现将二维数组转为json格式字符串操作示例
2018/07/12 Javascript
webpack4.x开发环境配置详解
2018/08/04 Javascript
Django+vue跨域问题解决的详细步骤
2019/01/20 Javascript
微信小程序文章列表功能完整实例
2020/06/03 Javascript
Node.js 中判断一个文件是否存在
2020/08/24 Javascript
python控制台显示时钟的示例
2014/02/24 Python
python中os和sys模块的区别与常用方法总结
2017/11/14 Python
python实现决策树分类算法
2017/12/21 Python
Python实现查看系统启动项功能示例
2018/05/10 Python
python散点图实例之随机漫步
2018/08/27 Python
PyCharm设置护眼背景色的方法
2018/10/29 Python
Python文件循环写入行时防止覆盖的解决方法
2018/11/09 Python
详解Python装饰器
2019/03/25 Python
python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
2019/04/25 Python
树莓派使用USB摄像头和motion实现监控
2019/06/22 Python
使用apiDoc实现python接口文档编写
2019/11/19 Python
Html5移动端获奖无缝滚动动画实现示例
2018/06/25 HTML / CSS
美国一站式电动和手动工具商店:International Tool
2020/11/26 全球购物
Java程序员面试题
2013/07/15 面试题
大学生个人简历中的自我评价
2013/12/27 职场文书
搞笑获奖感言
2014/01/30 职场文书
小学生成长感言
2014/01/30 职场文书
人力资源主管的岗位职责
2014/03/15 职场文书
小学生教师节演讲稿
2014/09/03 职场文书