php里常用的远程采集函数

/**
 * 获取远程url的内容
 * @param string $url
 * @return string
 */
function get_url_content($url) {
  if(function_exists(curl_init)) {
    $ch = curl_init();
    $timeout = 5;
    curl_setopt ($ch, CURLOPT_URL, $url);
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    curl_setopt ($ch, CURLOPT_TIMEOUT, $timeout);

    $file_contents = curl_exec($ch);
    curl_close($ch);
  } else {
    $file_contents = file_get_contents($url);
  }

  return $file_contents;
}

测试

$url = 'http://www.baidu.com';
$a = get_url_content($url);
echo $a;

curl网站开发指南(转)

作者: 阮一峰

日期: 2011年9月 4日

我一向以为,curl只是一个编程用的函数库。

最近才发现,这个命令本身,就是一个无比有用的网站开发工具,请看我整理的它的用法。

===================================

curl网站开发指南

阮一峰 整理

curl是一种命令行工具,作用是发出网络请求,然后得到和提取数据,显示在”标准输出”(stdout)上面。

它支持多种协议,下面举例讲解如何将它用于网站开发。 Continue reading

在Windows下使用curl命令

curl 是一般linux发行版中都带有的小工具,利用这个工具可以很方便的下载文件,我一般使用这个工具来查看某个页面相应的HTTP头信息,

例如: curl -I http://www.oschina.net/

在Windows系统中我们也一样可以使用这个工具,如果不需要支持https的话,那直接下载一个可执行文件即可,下载页面 是:http://curl.haxx.se/download.html,这个页面最底部有一个Windows下的下载链接,请选择不带SSL的版本, 否则还需要安装SSL的支持包。我下载的地址是:

http://curl.haxx.se/download.html

解压后直接执行 curl.exe 即可,使用方法跟linux下的完全相同。此命令功能非常强大,又兴趣自己研究一下。 Continue reading

豆瓣的 Web 服务器

豆瓣最近发布新功能有些”疯狂”,所以服务器也有新的部署。看到阿北同学在豆瓣广播里说:

豆瓣的第二台应用服务器终于投入了使用。Hongqn 忙了一晚上就完成了部署。第一台服务器支撑到 500 万动态PV/天,服务 On Demand 即时分布式部署......

500 万 PV , 还是动态 PV, 是个很惊人的数字。因为,如果都能达到一台机器支撑 500 万,那么国内稍有点规模的网站(就说动态 PV 上亿的吧),只需要 20 台 Web 服务器就够了。事实上,即使比较强调技术的网站怕也要上百台 Web 服务器的规模。 Continue reading

curl使用简介

curl网站开发指南:http://www.ruanyifeng.com/blog/2011/09/curl.html

Curl是一个很强大的http命令行工具,其功能十分强大。

在FreeBSD下的安装教程参考这里:http://blog.haohtml.com/index.php/archives/3242
1) 二话不说,先从这里开始吧!
$ curl http://www.yahoo.com
回车之后,www.yahoo.com 的html就稀里哗啦地显示在屏幕上了    ~
2) 嗯,要想把读过来页面存下来,是不是要这样呢?
$ curl http://www.yahoo.com > page.html
当然可以,但不用这么麻烦的!
用curl的内置option就好,存下http的结果,用这个option: -o
$ curl -o page.html http://www.yahoo.com
这样,你就可以看到屏幕上出现一个下载页面进度指示。等进展到100%,自然就 OK咯 Continue reading