在用php的curl抓页面遇到一个问题:现在是目标页面太大,而我只是需要头部的少量内容,如何做到只下载给定字节长度的内容而不是下载全部页面?看到CURLOPT_RANGE这个参数,但是设置以后什么也抓不到了。谢谢各位!

解决方案 »

  1.   

    curl 不行吧?包装的太好了,细节不好控制了。改用 fsockopen 吧,也不复杂。
    ————————————————————————————————
    基于CSDN论坛提供的插件扩展功能,自己做了个签名档工具,分享给大家,欢迎技术交流 :)
      

  2.   


    不需要指哪下哪,就是从0开始,比如我只想下载1KB的内容,呵呵继续UP,等待大家回答
      

  3.   


    好像很多空间不支持fsockopen,所以这个没学习过
      

  4.   

    话说,这个 CURLOPT_RANGE,我试了一下,是可以的呀(我自己调试环境的 web server)。CURLOPT_RANGE,应该就是“断点续传”的技术,说白了无非就是在 headers 里加一行 Range:... ,可能需要服务器端支持才可以,比如我抓 http://www.baidu.com/,设置 CURLOPT_RANGE 为 '0-1024',可人家不管三七二十一,完整地给我返回了。倒是没有“什么也抓不到”的现象,不知道楼主是怎么弄的。按说楼主这种需求,从 socket 入手是最简单有效的。不过要是说“很多空间不支持”,那也就没办法了。
    ————————————————————————————————
    基于CSDN论坛提供的插件扩展功能,自己做了个签名档工具,分享给大家,欢迎技术交流 :)
      

  5.   

    扫噶,我试试,明天结贴,谢谢 maquan 兄弟!