curl模拟post请求提交
来源:互联网 发布:朝勇投资有限公司 知乎 编辑:程序博客网 时间:2024/05/16 14:05
header('content-type:text/html;charset=utf-8'); function curlPost($url,$data,$method){ $ch = curl_init(); //1.初始化 curl_setopt($ch, CURLOPT_URL, $url); //2.请求地址 curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);//3.请求方式 //4.参数如下 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);//https curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');//模拟浏览器 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_AUTOREFERER, 1); curl_setopt($ch, CURLOPT_HTTPHEADER,array('Accept-Encoding: gzip, deflate'));//gzip解压内容 curl_setopt($ch, CURLOPT_ENCODING, 'gzip,deflate'); if($method=="POST"){//5.post方式的时候添加数据 curl_setopt($ch, CURLOPT_POSTFIELDS, $data); } curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $tmpInfo = curl_exec($ch);//6.执行 if (curl_errno($ch)) {//7.如果出错 return curl_error($ch); } curl_close($ch);//8.关闭 return $tmpInfo; } $data=array('name' => '1234'); $url="http://www.sohu.com/"; $method="GET"; $file=curlPost($url,$data,$method); $file=mb_convert_encoding($file,'UTF-8','GBK'); echo $file;
以下是模拟登陆的代码
<?php $cookie_file = tempnam('./temp','cookie'); function weixinPost($url,$data,$method,$setcooke=false,$cookie_file=false){ $ch = curl_init(); //1.初始化 curl_setopt($ch, CURLOPT_URL, $url); //2.请求地址 curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);//3.请求方式 //4.参数如下 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)'); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_AUTOREFERER, 1); if($method=="POST"){//5.post方式的时候添加数据 curl_setopt($ch, CURLOPT_POSTFIELDS, $data); } if($setcooke==true){ curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file); }else{ curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file); } curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $tmpInfo = curl_exec($ch);//6.执行 if (curl_errno($ch)) {//7.如果出错 return curl_error($ch); } curl_close($ch);//8.关闭 return $tmpInfo; } $data=array('username' => '***','password'=>'***'); $url="http://www.xinxinj.com/login.php"; $method="POST"; $file=weixinPost($url,$data,$method,true,$cookie_file); echo $file; $url="http://www.xinxinj.com/admin.php"; $method="GET"; $file=weixinPost($url,$data,$method,false,$cookie_file); echo $file; ?>
0 0
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- CURL模拟POST请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- curl模拟post请求提交
- 越狱及蠕虫病毒
- 2016 ICPC 大连网络赛 HDU 5874 Friends and Enemies
- javascript网页特效——div的应用
- [httpcomments-client-4.5.2]--源码分析( HTTP entity)
- 【React Native】Navigator组件 使用理解-转载自React Native中文社区
- curl模拟post请求提交
- ffmpeg用来播放视频
- Leetcode_14
- Java中继承讲解
- Java 中的 scanner
- SQL优化避免索引失效
- Mybatis中tinyint(1)数据自动转化为boolean处理
- 学习版本控制工具 git的基本使用
- 坚持#第37天~Java开发大数据实时统计系统