urllib2 gzipped gzip压缩

    #rr=httppool[getdomain(url)[0]].urlopen("get",getdomain(url)[1],retries=1,headers=headers).data
    def do(url):
        try:
            return httppool[getdomain(url)[0]].get_url(getdomain(url)[1],retries=1,headers=headers).data
        except urllib3.HTTPError,e:
            print "在获取url=%s的源码时出现了异常:%s"%(url,e)
            return ""
    
    rr = with_timeout(5, do, url, timeout_value="")
    ee=datetime.now()
    print "cost time--------------------------:%s"%(ee-ss).seconds
    #rr=httppool[getdomain(url)[0]].get_url(getdomain(url)[1],retries=1,headers=headers)
    pdata = StringIO.StringIO(rr)#下面6行是实现解压缩
    gzipper = gzip.GzipFile(fileobj = pdata)
    isUseGzip=True
    try:
        data = gzipper.read()
    except(IOError):
        isUseGzip=False
        print 'unused gzip'
        data = rr#当有的服务器不支持gzip格
    #print data
    
    print "isUseGzip:%s"%isUseGzip
    return data
posted on 2010-10-16 08:48  lexus 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/lexus/archive/2010/10/16/1852885.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值