php file_get_contents 效率,php 浅析file_get_contents、curl 的效率和稳定性
感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧!
做过好多抓取别家网站内容的产品,习惯了使用方便快捷的file_get_contents函数,但是总是会遇到获取失败的问题,尽管按照手册中的例子设置了超时,可多数时候不会奏效:
$config['context'] = stream_context_create(array(‘http’ =< array(‘method’ =< “GET”,
’timeout’ =< 5//这个超时时间不稳定,经常不奏效
)
));
# End www_512pic_com
这时候,看一下服务器的连接池,会发现一堆类似的错误,让你头疼万分:
file_get_contents(http://***): failed to open stream…
不得已,安装了curl库,写了一个函数替换:
function curl_file_get_contents($durl){
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL,$durl);
curl_setopt($ch, CURLOPT_TIMEOUT,5);
curl_setopt($ch, CURLOPT_USERAGENT, _USERAGENT_);
curl_setopt($ch, CURLOPT_REFERER,_REFERER_);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$r=curl_exec($ch);
curl_close($ch);
return $r;
}
# End www_512pic_com
如此,除了真正的网络问题外,没再出现任何问题。
这是别人做过的关于curl和file_get_contents的测试:
file_get_contents抓取google.com需用秒数:
2.31319094
2.30374217
2.21512604
3.30553889
2.30124092
curl使用的时间:
0.68719101
0.64675593
0.64326
0.81983113
0.63956594
差距很大吧?呵呵,从我使用的经验来说,这两个工具不只是速度有差异,稳定性也相差很大。建议对网络数据抓取稳定性要求比较高的朋友使用上面的curl_file_get_contents函数,不但稳定速度快,还能假冒浏览器欺骗目标地址哦!
特别要注意:php版本不同可能测试结果不同,在php5.2下 file_get_contents函数效率特别低,容易出现占用cpu过高的情况,建议升级到php5.3,经测试在php5.3下没有该问题
注:关于php 浅析file_get_contents、curl 的效率和稳定性的内容就先介绍到这里,更多相关文章的可以留意512笔记的其他信息。
关键词:file_get_contents,curl
php file_get_contents 效率,php 浅析file_get_contents、curl 的效率和稳定性相关推荐
- 移除集合效率高还是add高_效率比较--集合
List ArrayList 实现原理内部封装Object[]数组(若创建时未指定长度 数组初始长度默认为10) 实质为 :无序数组 插入快 查找和删除指定元素慢 总结 O(1) O(N) O(1) ...
- 斜面怎么计算机械效率,初中物理斜面的机械效率学习方法
赶考状元小编为您带来初中物理斜面的机械效率学习方法,希望对大家有所帮助 初中物理斜面的机械效率学习方法(一) 斜面的机械效率: 有用功W有用=Gh总功W总=Fl W总=Gh+fl (f为摩擦力)额外功 ...
- Java List去重 Lis集合去重 List去重效率对比 List去重复元素效率对比 List去重效率
Java List去重 Lis集合去重 List去重效率对比 List去重复元素效率对比 List去重效率 --- List 去重复元素的几种办法 一.概述 面试的时候,有个常见的问题:" ...
- 致命的效率:漫谈RSS阅读器效率
致命的效率:漫谈RSS阅读器效率 翻译兼论述:玩聚网郑昀 关键词:RSS.阅读器 Bloglines的beta版本横空出世,一举融合bloglines和google reader的优缺点,像是鲜果的更 ...
- 计算机械效率的公式怎么读,机械效率
机械效率是指机械在稳定运转时,机械的输出功(有用功量)与输入功(动力功量)的百分比.主要内容包括滑轮组,斜面效率,杠杆转动,常见效率,增大效率. 我们把有用功和总功的比值叫做机械效率.用符号η表示,计 ...
- 计算机械效率的公式怎么读,机械效率的计算公式
全文共计1477字,建议阅读时间4分钟 1 机械效率的计算公式 机械功率计算公式为η=W有/W总×100%.我们把有用功和总功的比值叫做机械效率.用符号η表示.主要内容包括滑轮组,斜面效率,杠杆转动 ...
- php 如何得到 file_get_contents 数据,如何使用file_get_contents在PHP中发布数据?
使用 file_get_contents发送HTTP POST请求不是那么难,实际上:正如你猜到的,你必须使用$ context参数. PHP手册中有一个例子,在这个页面:HTTP context o ...
- like效率 regexp_Oracle 中like效率 正则表达式 浅析
Oracle 中like常用但是其效率不是高. 特别是使用%a%----->全局扫描,没有利用到任何索引. 情况可以的条件尽量下使用a%------>可以利用正序的索引. %a------ ...
- 浅析电子合同之效率篇:电子合同如何提高效率
都说电子合同提高效率,但是如何提高效率却很难用一句化说清,本文通过梳理电子合同订立背景与过程,简述电子合同应用如何解决传统纸质合同的效率痛点-- 合法合规是电子合同使用与推广的前提 首先要明确一点,电 ...
最新文章
- torch 特征对齐
- GDT、GDTR、LDT、LDTR的学习
- java string转decimal_java中string转bigdecimal的例子
- 香港2013迷你制汇节即将启幕
- 如何修改Myeclipse中代码的字体大小?
- 身为管理者 会讲的六十八个故事
- intel网卡win10 修改mac
- 驱动精灵修复服务器,驱动精灵系统漏洞需要修复吗
- matlab生成摆线齿廓线,基于Matlab的摆线针轮齿廓修形参数的求解
- 免费的文档翻译教程;免费将很长的文档英文翻译成中文
- 科研笔记1:科研绘图
- C:\Users\用户名\AppData\Roaming里面的文件可以删除吗?
- 支付宝企业转账到个人账号(php源码,亲测)
- 汇编程序设计:钟表显示
- 微信小程序Java登录流程(ssm实现具体功能和加解密隐私信息问题解决方案)...
- V2Ray启动时显示Fatal error:can't bind to127.0.0.1:XXXXX解决方案
- python简易BMI测体重
- 【githubshare】KCon 黑客大会演讲 macOS Big Sur 内核漏洞挖掘、云虚拟化安全、服务器硬件可信与安全实践
- [复现]在colab上实现HistoSegNet
- javbd(javalibrary)