Python获取远程文件大小的函数代码分享

yipeiwu_com7年前Python基础
复制代码 代码如下:

def getRemoteFileSize(url, proxy=None):
    """ 通过content-length头获取远程文件大小
        url - 目标文件URL
        proxy - 代理  """
    opener = urllib2.build_opener()
    if proxy:
        if url.lower().startswith('https://'):
            opener.add_handler(urllib2.ProxyHandler({'https' : proxy}))
        else:
            opener.add_handler(urllib2.ProxyHandler({'http' : proxy}))
    try:
        request = urllib2.Request(url)
        request.get_method = lambda: 'HEAD'
        response = opener.open(request)
        response.read()
    except Exception, e: # 远程文件不存在       
        return 0
    else:
        fileSize = dict(response.headers).get('content-length', 0)
        return int(fileSize)

相关文章

python对文件目录的操作方法实例总结

本文实例讲述了python对文件目录的操作方法。分享给大家供大家参考,具体如下: python 可以很方便的对文件进行打开,读写操作,删除操作,也可以很方便的对文件夹进行遍历操作。总体说...

解决python3 urllib中urlopen报错的问题

解决python3 urllib中urlopen报错的问题

前言 最近更新了Python版本,准备写个爬虫,意外的发现urllib库中属性不存在urlopen,于是各种google,然后总结一下给出解决方案 问题的出现 Attribute...

python双向链表原理与实现方法详解

本文实例讲述了python双向链表原理与实现方法。分享给大家供大家参考,具体如下: 双向链表 一种更复杂的链表是“双向链表”或“双面链表”。每个节点有两个链接:一个指向前一个节点,当此节...

Python Tensor FLow简单使用方法实例详解

Python Tensor FLow简单使用方法实例详解

本文实例讲述了Python Tensor FLow简单使用方法。分享给大家供大家参考,具体如下: 1、基础概念 Tensor表示张量,是一种多维数组的数据结构。Flow代表流,是指张量之...

python实时分析日志的一个小脚本分享

前言 大家都知道Web运维总要关注相关域名的实时2xx/s、4xx/s、5xx/s、响应时间、带宽等这些指标,之前的日志是五分钟一分割,简单的用awk就可以了,现在由于要推送日志到ELK...