用file_get_contents获取远程文件,返回错误,连接不上。
网上有人说可以用socket。没用过啊,搜了一下都是你转我的我转你的,对于初次接触的人来说可操作性不强啊。
我现在的需求是写小偷程序,从别人的网站上拷内容。那些介绍socket的文章都有提到“服务端程序”和“客户端程序”。
我有个不明白的地方:
服务端程序是放在哪儿的?被访问网站的服务器上吗? 那跟我应该没关系吧(不用写),我是不是只需要写客户端程序呢?实例拜托硬编码  就以www.baidu.com为例子吧  感谢感谢!!socket实例

解决方案 »

  1.   

    socket 不是分放在哪,而是监听一方为服务器端,请求连接一方为客户端你如果只是要抓东西,socket对你来说太难了,没必要,用curl吧,搜索一下本版,相关帖子多的是
      

  2.   

    file_get_contents 不行吗,出了什么错。
      

  3.   

    对方做了限制吧,尝试着用curl试试看。
      

  4.   

    要是能用也不用想socket的办法了// 创建一个新cURL资源
    $ch = curl_init();// 设置URL和相应的选项
    curl_setopt($ch, CURLOPT_URL, "http://bbs.csdn.net/topics/380240079");
    curl_setopt($ch, CURLOPT_HEADER, 0);// 抓取URL并把它传递给浏览器
    var_dump(curl_exec($ch));// 关闭cURL资源,并且释放系统资源
    curl_close($ch);
    换了n个链接,都返回false。   发给朋友试,他说他那边返回true    
      

  5.   


    这是我试的代码:// 创建一个新cURL资源
    $ch = curl_init();// 设置URL和相应的选项
    curl_setopt($ch, CURLOPT_URL, "http://bbs.csdn.net/topics/380240079");
    curl_setopt($ch, CURLOPT_HEADER, 0);// 抓取URL并把它传递给浏览器
    var_dump(curl_exec($ch));// 关闭cURL资源,并且释放系统资源
    curl_close($ch);不行。兄弟帮忙试试看?
      

  6.   

    找到一个,试试:
    function read_file($url){
      $r=@file_get_contents($url);
      if(!$r){
        $ch = curl_init();   
        curl_setopt($ch, CURLOPT_URL, $url);            //设置访问的url地址   
        //curl_setopt($ch,CURLOPT_HEADER,1);            //是否显示头部信息   
        curl_setopt($ch, CURLOPT_TIMEOUT, 5);           //设置超时   
        curl_setopt($ch, CURLOPT_USERAGENT, _USERAGENT_);   //用户访问代理 User-Agent   
        curl_setopt($ch, CURLOPT_REFERER,_REFERER_);        //设置 referer   
        curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);      //跟踪301   
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);        //返回结果   
        $r = curl_exec($ch);
        curl_close($ch);
      }
      return $r;   
    }
      

  7.   

    不行就表示你的 curl 扩展没有开启,不过连 file_get_contents 都不能访问 url 的话,curl 多半是不黑开启的
      

  8.   

    扩展开启了我在公司试,不管用file_get_contents ,curl都不行。回家试可以。   不知道跟网络有没有关系?