php基于curl实现随机ip地址抓取内容的方法


Posted in PHP onOctober 11, 2016

本文实例讲述了php基于curl实现随机ip地址抓取内容的方法。分享给大家供大家参考,具体如下:

使用php curl 我们可以模仿用户行为,既可以设置我们访问的ip及浏览器信息还可以设置post方式。

curl是一个特别牛逼的东西!~ 居然还可以生成随机的ip来访问,甚至可以让服务器分辨不出真实ip。这个很牛!有人说这个是不算bug的bug。不过有这个功能也给我们带来了很大的方便。

php基于curl实现随机ip访问:

<?php
function curl($url,$ifpost = 0, $datafields = '', $cookiefile = '', $v = false){
 $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]));
$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,30); //允许执行的最长秒数
 $ok = curl_exec($ch);
 curl_close($ch);
 unset($ch);
 return $ok;
}
 print_r(curl("URL"));
?>

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

PHP 相关文章推荐
PHP GD 图像处理组件的常用函数总结
Apr 28 PHP
php5.5新数组函数array_column使用
Jul 08 PHP
简单的php文件上传(实例)
Oct 27 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十六)
Jun 30 PHP
PHP中的插件机制原理和实例
Jul 08 PHP
CI框架学习笔记(一) - 环境安装、基本术语和框架流程
Oct 26 PHP
PHP mysql事务问题实例分析
Jan 18 PHP
php获取文件后缀的9种方法
Mar 22 PHP
谈谈PHP连接Access数据库的注意事项
Aug 12 PHP
Laravel Validator 实现两个或多个字段联合索引唯一
May 08 PHP
PHP Primary script unknown 解决方法总结
Aug 22 PHP
PHP实现笛卡尔积算法的实例讲解
Dec 22 PHP
php 获取文件行数的方法总结
Oct 11 #PHP
PHP中文字符串截断无乱码解决方法
Oct 10 #PHP
PHP获取用户客户端真实IP的解决方案
Oct 10 #PHP
php表单加入Token防止重复提交的方法分析
Oct 10 #PHP
Laravel5中防止XSS跨站攻击的方法
Oct 10 #PHP
php中让人头疼的浮点数运算分析
Oct 10 #PHP
Laravel实现自定义错误输出内容的方法
Oct 10 #PHP
You might like
PHP ? EasyUI DataGrid 资料取的方式介绍
2012/11/07 PHP
Yii2创建多界面主题(Theme)的方法
2016/10/08 PHP
centos+php+coreseek+sphinx+mysql之一coreseek安装篇
2016/10/25 PHP
PHP中类型转换 ,常量,系统常量,魔术常量的详解
2017/10/26 PHP
javascript web对话框与弹出窗口
2009/02/22 Javascript
使用滤镜设置透明导致 IE 6/7/8/9 解析异常的解决方法
2011/04/07 Javascript
JavaScript 变量作用域分析
2011/07/04 Javascript
jQuery 获取URL的GET参数值的小例子
2013/04/18 Javascript
js中一维数组和二位数组中的几个问题示例说明
2014/07/17 Javascript
jQuery中remove()方法用法实例
2014/12/25 Javascript
JavaScript动态添加列的方法
2015/03/25 Javascript
基于jQuery实现的向下滑动二级菜单效果代码
2015/08/31 Javascript
基于jquery实现百度新闻导航菜单滑动动画
2016/03/15 Javascript
微信小程序开发之大转盘 仿天猫超市抽奖实例
2016/12/08 Javascript
js手机号4位显示空格,银行卡每4位显示空格效果
2017/03/23 Javascript
微信小程序 跳转传递数据的实例
2017/07/06 Javascript
js中实例与对象的区别讲解
2019/01/21 Javascript
python itchat实现微信好友头像拼接图的示例代码
2017/08/14 Python
python中学习K-Means和图片压缩
2017/11/20 Python
使用pytorch进行图像的顺序读取方法
2018/07/27 Python
Matplotlib中文乱码的3种解决方案
2018/11/15 Python
VSCode Python开发环境配置的详细步骤
2019/02/22 Python
Python 解析pymysql模块操作数据库的方法
2020/02/18 Python
python与pycharm有何区别
2020/07/01 Python
Python把图片转化为pdf代码实例
2020/07/28 Python
Python用dilb提取照片上人脸的示例
2020/10/26 Python
NBA欧洲商店(法国):NBA Europe Store FR
2016/10/19 全球购物
泰国Robinson百货官网:购买知名品牌的商品
2020/02/08 全球购物
美国最大的烧烤架和户外生活用品专业零售商:Barbeques Galore
2021/01/09 全球购物
年度优秀员工获奖感言
2014/08/15 职场文书
音乐教师个人总结
2015/02/06 职场文书
母亲去世追悼词
2015/06/23 职场文书
严以律己学习心得体会
2016/01/13 职场文书
为什么 Nginx 比 Apache 更牛逼
2021/03/31 Servers
微软PC Health Check电脑健康状况检查应用下载(Win11配置检测工具)
2021/06/26 数码科技
CSS中float高度塌陷问题的四种解决方案
2022/04/18 HTML / CSS