php采集时被封ip的解决方法_php技巧

在网上找了一些资料都没有找到,功夫不负有心人啊,在找的时侯有一个人提到了用搜索引擎爬虫蜘蛛的USERAGENT。虽然只提到一点点我还是想到了,列出我的解决方法,

1.使用Snoopy或curl传搜索引擎爬虫的USERAGENT值。
查看搜索引擎爬虫的USERAGENT值:http://www.jb51.net/yunying/29357.html

2.使用Snoopy或curl传referer值。
如:$snoopy->referer = 'http://www.google.com';
$header[] = "Referer: http://www.google.com/";

3.使用Snoopy或curl代理。
如:$snoopy->proxy_host = "59.108.44.41";
$snoopy->proxy_port = "3128";

4.使用Snoopy或curl防造IP。
如:$snoopy->rawheaders['X_FORWARDED_FOR'] = '127.0.0.1';

5.用php与一个重起路由的程序,这样就会获得新的ip地址。

6.如果发现重起路由还是显示被封,有可能对方封了你的mac地址,现在路由器都有伪造MAC的功能,可以写程序或手动修改路由器的MAC地址,网上也有专门修改网卡mac地址的工具。

时间: 2024-10-27 00:52:15

php采集时被封ip的解决方法_php技巧的相关文章

PHP使用json_encode函数时不转义中文的解决方法_php技巧

本文实例讲述了PHP使用json_encode函数时不转义中文的解决方法.分享给大家供大家参考.具体方法如下: json_encode函数对于gbk中的中文字符是不会转换的或直接转换成空格了,本文就来给各位整理一个关于json不转义中文问题处理技巧,相信对大家有所帮助. 如果你调用 PHP 自带的 json_encode() 函数, 碰到中文时, 中文会被转义掉. 例如: 复制代码 代码如下: echo json_encode(array('你好')); // 输出: ["\u4f60\u597

php生成二维码时出现中文乱码的解决方法_php技巧

本文实例讲述了php生成二维码时出现中文乱码的解决方法.分享给大家供大家参考.具体分析如下: 最近做了个扫描二维码得到vcard的项目,遇到一个问题,有一部分生成完的二维码,用android系统手机扫描后得到的vcard中的中文姓名是乱码,经过比对发现,这部分vcard中ORG这个类型没有内容,随即判断没内容就加上一个固定的字符串,这样乱码的问题得以解决. php生成二维码的几种方式 1.google开放api,代码如下: 复制代码 代码如下: $urlToEncode="http://www.

php使用escapeshellarg时中文被过滤的解决方法_php技巧

本文分析了php使用escapeshellarg时中文被过滤的解决方法.分享给大家供大家参考.具体如下: 一.问题: 同样的代码,发现通过 localhost/index.php 访问,和在 shell 中通过 php ./index.php 运行結果却不一样. 在程序中需要通过 shell_exec 来执行一个 linux 程序,而它的输入来自 echo ,即: shell_exec('echo '.escapeshellarg($str).' | some_cmd 2>&1'); 二.解

PHP中iconv函数转码时截断字符问题的解决方法_php技巧

iconv是转换编码的,但是在中文转码时候出现显示不全问题.  复制代码 代码如下:   iconv("UTF-8","GB2312//IGNORE",$data);    加上//IGNORE,忽略错误    或者用mb_convert_encoding() 复制代码 代码如下:   <?php  /* 转换内部编码为 SJIS */  $str = mb_convert_encoding($str, "SJIS");    /* 将 E

ThinkPHP提交表单时默认自动转义的解决方法_php实例

本文实例讲述了ThinkPHP提交表单时默认自动转义的解决方法.分享给大家供大家参考.具体方法如下: 一.问题: 在ThinkPHP中提交表单插入数据的时候,单引号和双引号是会被自动转义的,就是会自动的加上反斜线,但是我不想给单引号和双引号加上反斜线. 在ThinkPHP中提交表单插入数据的时候,单引号和双引号是会被自动转义的,就是会自动的加上反斜线,但是我不想给单引号和双引号加上反斜线,在ThinkPHP中提交表单插入数据的时候,单引号和双引号是会被自动转义的,就是会自动的加上反斜线,但是我不

py文件转exe时包含paramiko模块出错解决方法_php实例

 问题描述: python代码中包含paramiko模块的远程登录ssh,在用pyInstaller转为exe时报错, 报错提示为"No handlers could be found for logger "paramiko.transport" 出错位置: ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 解决方案: 添加一行代码,记录传输日志. 代码如

php生成excel列名超过26列大于Z时的解决方法_php技巧

本文实例讲述了php生成excel列名超过26列大于Z时的解决方法.分享给大家供大家参考.具体分析如下: 我们生成excel都会使用phpExcel类,这里就来给大家介绍在生成excel列名超过26列大于Z时的解决办法,这是phpExcel类中的方法,今天查到了,记录一下备忘,代码如下: 复制代码 代码如下: public static function stringFromColumnIndex($pColumnIndex = 0)  {          //  Using a lookup

PHP连接MSSQL时nvarchar字段长度被截断为255的解决方法_php技巧

本文实例讲述了PHP连接MSSQL时nvarchar字段长度被截断为255的解决方法.分享给大家供大家参考.具体分析如下: PHP 连接 MSSQL 的新手经常遇到这个问题:数据库里面的 nvarchar 字段中数据一切正常,但是用 PHP 查询出来却发现长度只有 255,我们都知道,在 MySQL 里面 varchar 的长度只有 255,但是 MSSQL 却不是,不会是 PHP 将 nvarchar 按照 MySQL 的 varchar 处理了吧. 本文给出了解决方法: 复制代码 代码如下:

php中导出数据到excel时数字变为科学计数的解决方法_php技巧

在数据导出到excel时数字格式不对,一般分为以下两种情况. 1.excel单元格设置长度不够 解决方法: 复制代码 代码如下: //在excel.php文件中 $objActSheet = $objPHPExcel->getActiveSheet(); // 设置 栏目名称 $objActSheet->setCellValue("b1", "卡号"); // 设置列的宽度 $objActSheet->getColumnDimension('b')