PHP CURL 模拟请求
来源:互联网 发布:c语言循环代码 编辑:程序博客网 时间:2024/05/18 01:03
模拟简单 Get 请求示例:
==============================================
$url = "http://somedomain/ver/ffffffff-e31e-85d5-ffff-ffffa6220605/2/en/b0:79:94:e7:99:4a/3.5";
$ch = curl_init($url); //初始化
curl_setopt($ch, CURLOPT_HEADER, 0); // 不返回header部分
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 返回字符串,而非直接输出
curl_setopt($ch, CURLOPT_USERAGENT, "Dalvik/1.6.0 (Linux; U; Android 4.1.2; DROID RAZR HD Build/9.8.1Q-62_VQW_MR-2)");
curl_setopt($ch, CURLOPT_REFERER, "-");
$response = curl_exec($ch);
curl_close($ch);
print_r($response);
上面模拟的是手机端的请求,上面将 UserAgent 设置成一个安卓手机的信息.有很多站点判断请求是哪里来的,用这个可以混一下.同时设置 Referer, 表示从哪里跳到当前这个地址的,有的站点也会做判断.
模拟 POST 登录.然后做其它事.
==============================================
注意: 登录成功后, Cookie 里会保存一个 sessionID, 后续我们访问其它页面不需要再登录是因为我们访问页面时会带上 cookie , 所以服务端通过该 sessionID 来判断我们是否已经登录.当 cookie 过期后我们就需要重新登录了.
所以我们模拟登录时, 也要保存一下 cookie, 然后在后续模拟时将它带上
$account = "yourusername";
$password = "yourpassword";
$post = "account=$account&password=$password";
// 先获取cookies并保存
$cookie_file = dirname(__FILE__).'/cookie.txt';
$url = "http://domain/login";
$ch = curl_init($url); //初始化
curl_setopt($ch, CURLOPT_HEADER, 0); // 不返回header部分
curl_setopt($ch, CURLOPT_POST, 1);// 表明这次请求是 POST 的
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);// 设置 POST 参数
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 返回字符串,而非直接输出
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file); // 存储cookies
curl_exec($ch);
curl_close($ch);
// 登录成功后,获得用户其它页面的内容
$url = "http://domain/otherpage";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file); // 使用上面获取的cookies
$response = curl_exec($ch);
curl_close($ch);
print_r($response);
阅读全文
0 0
- PHP - CURL 模拟请求
- PHP CURL 模拟请求
- php curl 模拟post 请求
- php curl模拟https请求
- PHP--Curl模拟POST请求
- php模拟请求接口CURL
- php curl模拟post请求提交数据
- php cURL模拟https请求报错
- PHP curl 模拟http https请求
- php中实现curl模拟Http请求
- php中使用curl模拟get请求和post请求
- cURL模拟POST请求
- CURL模拟post请求
- curl模拟浏览器请求
- curl模拟post请求
- curl模拟post请求
- curl 模拟post请求
- curl模拟post请求
- HTML的一些笔记
- 安卓-图片适配问题,问UI设计师要什么样的图,然后图片放在哪个文件夹
- 伪随机数生成——梅森旋转(Mersenne Twister/MT)算法笔记
- 无线网卡mac地址修改
- 线程属性pthread_attr_t简介
- PHP CURL 模拟请求
- 蓝桥杯 算法训练 2的次幂表示(Java解题)
- maven项目打包的时候忽略第三方依赖jar包
- 10. 面向对象 -- 内部类
- 初学算法导论第一章节
- php 七牛 图片拼接+裁剪
- 【arduino】RosBot电机扩展板介绍
- 如何利用winhex处理磁盘未格式化
- 算法训练 s01串