php启用curl(php使用curl伪造浏览器访问操作示例)
类别:编程学习 浏览量:714
时间:2021-10-13 00:07:53 php启用curl
php使用curl伪造浏览器访问操作示例本文实例讲述了php使用curl伪造浏览器访问操作。分享给大家供大家参考,具体如下:
原理
服务器主要通过User-Agent识别客户端是何种设备
User-Agent是Http协议中的一部分,属于头域的组成部分。基本格式为: 浏览器标识 (操作系统标识; 加密等级标识; 浏览器语言) 渲染引擎标识 版本信息。
具体方法如下
|
/** * curl获取数据 * @param $url * @return mixed */ function get_url( $url ) { $ifpost = 0; $datafields = '' ; $cookiefile = '' ; $v = false; //构造随机ip $ip_long = array ( array ( '607649792' , '608174079' ), //36.56.0.0-36.63.255.255 array ( '1038614528' , '1039007743' ), //61.232.0.0-61.237.255.255 array ( '1783627776' , '1784676351' ), //106.80.0.0-106.95.255.255 array ( '2035023872' , '2035154943' ), //121.76.0.0-121.77.255.255 array ( '2078801920' , '2079064063' ), //123.232.0.0-123.235.255.255 array ( '-1950089216' , '-1948778497' ), //139.196.0.0-139.215.255.255 array ( '-1425539072' , '-1425014785' ), //171.8.0.0-171.15.255.255 array ( '-1236271104' , '-1235419137' ), //182.80.0.0-182.92.255.255 array ( '-770113536' , '-768606209' ), //210.25.0.0-210.47.255.255 array ( '-569376768' , '-564133889' ), //222.16.0.0-222.95.255.255 ); $rand_key = mt_rand(0, 9); $ip = long2ip(mt_rand( $ip_long [ $rand_key ][0], $ip_long [ $rand_key ][1])); //模拟http请求header头 $header = array ( "Connection: Keep-Alive" , "Accept: text/html, application/xhtml+xml, */*" , "Pragma: no-cache" , "Accept-Language: zh-Hans-CN,zh-Hans;q=0.8,en-US;q=0.5,en;q=0.3" , "User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)" , 'CLIENT-IP:' . $ip , 'X-FORWARDED-FOR:' . $ip ); $ch = curl_init(); curl_setopt( $ch , CURLOPT_URL, $url ); curl_setopt( $ch , CURLOPT_HEADER, $v ); curl_setopt( $ch , CURLOPT_HTTPHEADER, $header ); $ifpost && curl_setopt( $ch , CURLOPT_POST, $ifpost ); $ifpost && curl_setopt( $ch , CURLOPT_POSTFIELDS, $datafields ); curl_setopt( $ch , CURLOPT_RETURNTRANSFER, true); curl_setopt( $ch , CURLOPT_FOLLOWLOCATION, true); $cookiefile && curl_setopt( $ch , CURLOPT_COOKIEFILE, $cookiefile ); $cookiefile && curl_setopt( $ch , CURLOPT_COOKIEJAR, $cookiefile ); curl_setopt( $ch ,CURLOPT_TIMEOUT,60); //允许执行的最长秒数 curl_setopt( $ch , CURLOPT_SSL_VERIFYPEER, false); curl_setopt( $ch , CURLOPT_SSL_VERIFYHOST, false); $ok = curl_exec( $ch ); curl_close( $ch ); unset( $ch ); return $ok ; } |
希望本文所述对大家PHP程序设计有所帮助。
原文链接:https://blog.csdn.net/flysnownet/article/details/90025384
您可能感兴趣
- php获取数组中和为指定数的数组(php统计数组不同元素的个数的实例方法)
- phpstudy怎么升级mysql(phpStudy中升级MySQL版本到5.7.17的方法步骤)
- php目录函数创建教程(PHP下载文件函数与用法示例)
- php命名空间真的存在吗(PHP中命名空间的使用例子)
- php如何发邮件(PHP示例演示发送邮件给某个邮箱)
- php cookie(php更新cookie内容的详细方法)
- 在html代码如何添加php代码(php生成HTML文件的类方法)
- thinkphp5开发小程序后台(PHP小程序支付功能完整版基于thinkPHP)
- phpweb应用技术开发与数据库教程(IIS8 使用FastCGI配置PHP环境图文教程)
- php里的fpm是什么(phpfpm的作用和用法)
- phpstudy最佳配置(phpstudy如何开启openSSL?)
- phpstudy使用教程最新版(phpstudy安装使用图文教程)
- linux安装php目录路径修改(ubuntu环境下的php相关路径与修改方法)
- php运行实例(php实例化一个类的具体方法)
- dedecms注册怎么给权限(织梦DedeCms系统未审核文档禁止动态浏览修改方法view.php)
- php常用加密技术(php用户名的密码加密更安全的方法)
- 文莱旅游攻略(文莱旅游攻略介绍)
- 马来西亚旅游攻略(马来西亚旅游攻略自由行攻略)
- 缅甸旅游攻略(缅甸旅游攻略必去景点推荐)
- 《庆余年2》新消息,原班人马,肖战特别出演,这才是最好的安排(庆余年2新消息原班人马)
- 宁夏灵武恐龙化石发现始末(宁夏灵武恐龙化石发现始末)
- 到了岁末 临门一脚 节点,天台综合督评会目标直指 全年红(到了岁末临门一脚)
热门推荐
- php支付接口(PHP实现的支付宝支付功能示例)
- django中间件路径校验(Django中使用Whoosh进行全文检索的方法)
- python真的能高效处理excel报表吗(Python数据报表之Excel操作模块用法分析)
- service服务启动失败(service unavailable解决方法)
- mysql最佳配置(详解DBeaver连接MySQL8以上版本以及解决可能遇到的问题)
- 谷歌云服务账号详解(谷歌云服务器一年到期后,怎么继续免费使用?)
- 阿里云服务器ecs的三大资源(阿里云服务器ECS入门级和企业级有什么区别?)
- jquery五子棋javascript(原生JavaScript实现简单五子棋游戏)
- 在php中遍历数组使用(PHP读取远程txt文档到数组并实现遍历)
- 用php实现弹出消息提示框(php弹出提示框的是实例写法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9