curl()、file_get_contents()、snoopy.class.php 优缺点

curl()、file_get_contents()、snoopy.class.php 优缺点

2011-06-30文章来源:互联网浏览次数:298 分享文章

转载:http://www.kukaka.org/home/showonews/430


curl()、file_get_contents()、snoopy.class.php这三个远程页面抓取或采集中用到的工具,他们功能相当,到底有是么优缺点呢,下面逐一介绍

snoopy.class.php

snoopy 是用 fsockopen 自开发的一个类

效率比较高且不需要服务器特定配置支持,在普通虚拟主机中即可使用,但是经常出问题。

file_get_contents()

file_get_contents是 fsockopen 功能的简单打包

效率稍低些,但是抓取成功率很高,所以在 snoopy 出问题的时候我一般那他来

5.0.0 添加了对 context 的支持,有了context,他也可以发送 header 信息,自定义用户 agent, referer, cookies都不在话下。

5.1.0 添加了 offset 和 maxlen 参数,可以只读文件的一部分内容。

curl()

功能最强大,几乎可以模拟浏览器的各个方面,几乎可以以假乱真。效率也很高,支持多线程,不过需要开启下 curl 扩展。


你可能感兴趣的:(content)