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(3)
Oct 09 PHP
PHP 选项及相关信息函数库
Dec 04 PHP
PHP文件读写操作之文件写入代码
Jan 13 PHP
php设计模式 Bridge (桥接模式)
Jun 26 PHP
PHP函数spl_autoload_register()用法和__autoload()介绍
Feb 04 PHP
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装(win+linux)
May 05 PHP
PHP实现根据浏览器跳转不同语言页面代码
Aug 02 PHP
PHP引用符&amp;的用法详细解析
Aug 22 PHP
php 字符串中的\n换行符无效、不能换行的解决方法
Apr 02 PHP
PHP网络操作函数汇总
May 18 PHP
Symfony2创建基于域名的路由相关示例
Nov 14 PHP
yii2 resetful 授权验证详解
May 18 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
一个查看session内容的函数
2006/10/09 PHP
PHP 事务处理数据实现代码
2010/05/13 PHP
PHP变量的定义、可变变量、变量引用、销毁方法
2013/12/20 PHP
php实现mysql数据库分表分段备份
2015/06/18 PHP
[原创]ThinkPHP让../Public在模板不解析(直接输出)的方法
2015/10/09 PHP
php使用环形链表解决约瑟夫问题完整示例
2018/08/07 PHP
关于Yii中模型场景的一些简单介绍
2019/09/22 PHP
jquery 单引号和双引号的区别及使用注意
2013/07/31 Javascript
javascript实现简单查找与替换的方法
2015/07/22 Javascript
Ionic实现页面下拉刷新(ion-refresher)功能代码
2016/06/03 Javascript
深入理解vue-router之keep-alive
2017/08/31 Javascript
vue-cli整合vuex的时候,修改actions和mutations,实现热部署的方法
2018/09/19 Javascript
JS如何获取地址栏的参数实例讲解
2018/10/06 Javascript
微信小程序录音实现功能并上传(使用node解析接收)
2020/02/26 Javascript
ES6使用新特性Proxy实现的数据绑定功能实例
2020/05/11 Javascript
Python设计模式之MVC模式简单示例
2018/01/10 Python
python方向键控制上下左右代码
2018/01/20 Python
Python使用jsonpath-rw模块处理Json对象操作示例
2018/07/31 Python
Python字符串匹配之6种方法的使用详解
2019/04/08 Python
Python实现朴素贝叶斯的学习与分类过程解析
2019/08/24 Python
python实现将字符串中的数字提取出来然后求和
2020/04/02 Python
css3进行截取替代js的substring
2013/09/02 HTML / CSS
使用CSS3来绘制一个月食图案
2015/07/18 HTML / CSS
html特殊符号示例 html特殊字符编码对照表
2014/01/14 HTML / CSS
意大利在线高尔夫商店:Online Golf
2021/03/09 全球购物
银行会计职员个人的自我评价
2013/09/29 职场文书
大学生的四年学习自我评价
2013/12/13 职场文书
甲方资料员岗位职责
2013/12/13 职场文书
校园之声广播稿
2014/01/31 职场文书
跟单业务员岗位职责
2014/03/08 职场文书
高校群众路线教育实践活动剖析材料
2014/10/10 职场文书
父母教会我观后感
2015/06/17 职场文书
2016年中秋祝酒词
2015/11/26 职场文书
详解Go与PHP的语法对比
2021/05/29 PHP
python图像处理基本操作总结(PIL库、Matplotlib及Numpy)
2021/06/08 Python
总结高并发下Nginx性能如何优化
2021/11/01 Servers