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 相关文章推荐
支持oicq头像的留言簿(一)
Oct 09 PHP
Mysql的GROUP_CONCAT()函数使用方法
Mar 28 PHP
PHP 基于文件头的文件类型验证类函数
May 01 PHP
php中mkdir函数用法实例分析
Nov 15 PHP
浅析PHP中call user func()函数及如何使用call user func调用自定义函数
Nov 05 PHP
CI框架简单邮件发送类实例
May 18 PHP
php使用get_class_methods()函数获取分类的方法
Jul 20 PHP
Yii全局函数用法示例
Jan 22 PHP
PHP实现随机数字、字母的验证码功能
Aug 01 PHP
小程序微信支付功能配置方法示例详解【基于thinkPHP】
May 05 PHP
laravel5 Eloquent 实现事务方式
Oct 21 PHP
Laravel 验证码认证学习记录小结
Dec 20 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 session 写入数据库
2016/02/13 PHP
WHOOPS PHP调试库的使用
2017/09/29 PHP
php写入mysql中文乱码的实例解决方法
2019/09/17 PHP
使用TextRange获取输入框中光标的位置的代码
2007/03/08 Javascript
JavaScript 开发规范要求(图文并茂)
2010/06/11 Javascript
Jquery中使用setInterval和setTimeout的方法
2013/04/08 Javascript
js用typeof方法判断undefined类型
2014/07/15 Javascript
javascript面向对象之对象的深入理解
2015/01/13 Javascript
jQuery插件slicebox实现3D动画图片轮播切换特效
2015/04/12 Javascript
js实现a标签超链接提交form表单的方法
2015/06/24 Javascript
详解js中Json的语法与格式
2016/11/22 Javascript
jQuery模拟下拉框选择对应菜单的内容
2017/03/07 Javascript
JavaScript如何获取到导航条中HTTP信息
2017/10/10 Javascript
vue编译打包本地查看index文件的方法
2018/02/23 Javascript
vue2.0实现的tab标签切换效果(内容可自定义)示例
2019/02/11 Javascript
简单说说如何使用vue-router插件的方法
2019/04/08 Javascript
python执行外部程序的常用方法小结
2015/03/21 Python
python3 selenium自动化 下拉框定位的例子
2019/08/23 Python
基于python实现把图片转换成素描
2019/11/13 Python
使用pyqt 实现重复打开多个相同界面
2019/12/13 Python
python根据完整路径获得盘名/路径名/文件名/文件扩展名的方法
2020/04/22 Python
python3+openCV 获取图片中文本区域的最小外接矩形实例
2020/06/02 Python
详解Django中异步任务之django-celery
2020/11/05 Python
Python入门基础之数字字符串与列表
2021/02/01 Python
Python第三方库安装缓慢的解决方法
2021/02/06 Python
CSS3中的display:grid,网格布局介绍
2019/10/30 HTML / CSS
Oral-B荷兰:牙医最推荐的品牌
2020/02/25 全球购物
Smilodox官方运动服装店:从运动服到健身配件
2020/08/27 全球购物
Java中的异常处理机制的简单原理和应用
2013/04/27 面试题
幼儿园校车司机的岗位职责
2014/01/30 职场文书
店长职务说明书
2014/02/04 职场文书
党委班子对照检查材料
2014/08/19 职场文书
学习型家庭事迹材料(2016精选版)
2016/02/29 职场文书
Python Flask搭建yolov3目标检测系统详解流程
2021/11/07 Python
MySQL中varchar和char类型的区别
2021/11/17 MySQL
python神经网络学习 使用Keras进行回归运算
2022/05/04 Python