doudu9094
2015-06-17 11:22
浏览 136
已采纳

PHP - file_get_contents无法打开流:连接已关闭?

Implementation (url is a valid and running url):

$html = file_get_contents($url);

I am programming a crawler in php and sometimes file_get_contents returns the following error:

failed to open stream: Connection closed

This doesn't always occur, so when it does it confuses me a tad. Would this be an error on my side or the website I am crawling side? Either way is it sensible to keep retrying until an error doesn't occur or is there a better way?

图片转代码服务由CSDN问答提供 功能建议

实现(url是有效且正在运行的URL):

  $ html = file_get_contents($ url); 
   
 
 

我在php中编写一个爬虫程序,有时file_get_contents会返回以下错误:

无法打开流:连接已关闭

这并不总是会发生,因此当它发生时会让我感到困惑。 这会是我身边的错误还是我爬行的网站? 无论哪种方式都是明智的,继续重试,直到错误没有发生或有更好的方式?

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

3条回答 默认 最新

  • douhuan6305 2015-06-17 11:29
    最佳回答

    Try this way...

    function url_get_contents ($Url) {
        if (!function_exists('curl_init')){ 
            die('CURL is not installed!');
        }
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $Url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $output = curl_exec($ch);
        curl_close($ch);
        return $output;
    }
    
    评论
    解决 无用
    打赏 举报
查看更多回答(2条)

相关推荐 更多相似问题