zoukankan      html  css  js  c++  java
  • PHP通过CURL获取远程文件header头信息

    使用CURL方法获取远程文件header头信息,与内置函数get_headers不同的是,这个方法不用完整下载文件,只是下载头部信息,速度理论会快一些。

    public function getRemoteFileHeaders($url)
        {
        $options = array(
            CURLOPT_HEADER => true,
            CURLOPT_NOBODY => true,
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_FOLLOWLOCATION => true,
            CURLOPT_AUTOREFERER => true,
            CURLOPT_TIMEOUT => 30,
            CURLOPT_HTTPHEADER => array('Accept: */*', 'User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)', 'Connection: Keep-Alive')
        );
        $ch = curl_init($url);
        curl_setopt_array($ch, $options);
        $header = curl_exec($ch);
        $ret = curl_errno($ch);
        $error = curl_error($ch);
        curl_close($ch);
        if ($ret === 0) {
            $head = array();
            $headArray = explode("
    ", trim($header));
            $first = array_shift($headArray);
            preg_match("#HTTP/[0-9.]+s+([0-9]+)#", $first, $code);
            $head['code'] = intval($code[1]);
            foreach ($headArray as $v) {
            $arr = explode(':', $v, 2);
            $head[trim($arr[0])] = trim($arr[1]);
            }
            return $head;
        } else {
            return $error;
        }
    }

    Python request urllib 获取远程文件大小

    Python request urllib 获取远程文件大小
    有两个方法都可以获取文件大小
    第一种使用requests库

    import urllib
    import requests
    
    url=r'https://down.qq.com/qqweb/PCQQ/PCQQ_EXE/PCQQ2020.exe'
    
    download=requests.get(url)
    print(download.headers['content-length'])


    这个方法可以取到文件大小,但是缺点在于,首先会下载文件.

    第二种使用urllib库

    import urllib
    import requests
    
    url=r'https://down.qq.com/qqweb/PCQQ/PCQQ_EXE/PCQQ2020.exe'
    
    download=urllib.request.urlopen(url)
    print(download.headers['content-length'])

    本方法可以不下载文件,直接获取文件大小

    文章乃参考、转载其他博客所得,仅供自己学习作笔记使用!!!
  • 相关阅读:
    静态资源分析 ------ CocosCreator
    性能分析 ------ CPU运行卡点
    神犇的blog
    0x01-1 原码 反码 补码 概念 原理 详解
    埃拉托色尼素数筛法(转)
    Miller-Rabin概率素数测试算法(转)
    欧拉函数(转)
    中国剩余定理(孙子定理)详解 (转)
    负数取模(转)
    HDU1430 BFS + 打表 + 康托展开(转)
  • 原文地址:https://www.cnblogs.com/xuan52rock/p/15467552.html
Copyright © 2011-2022 走看看