python向服务器请求压缩数据及解压缩数据

向服务器请求压缩数据格式,并解压缩数据

#!/usr/bin/env python
# encoding=utf-8

import urllib2, httplib

def writeFile(fname, data):
	f = open(fname, "w")
	f.write(data)
	f.close()

if __name__ == '__main__':
	httplib.HTTPConnection.debuglevel = 1
	request = urllib2.Request('http://www.163.com/')
	request.add_header('Accept-encoding', 'gzip')	# 向服务器请求压缩数据
	opener = urllib2.build_opener()
	f = opener.open(request)
	data = f.read()			# 读取页面返回的数据
	f.close()
	print "压缩的数据长度为:%d" %len(data)
	writeFile("a.html", data)

	import StringIO, gzip
	compressedstream = StringIO.StringIO(data)
	gziper = gzip.GzipFile(fileobj=compressedstream)
	data2 = gziper.read()	# 读取解压缩后数据
	print "解压缩后数据长度为:%d" %len(data2)
	writeFile("aa.html", data2)

运行结果:

[zcm@python #25]$./del.py 
压缩的数据长度为:100457
解压缩后数据长度为:358659
[zcm@python #26]$wc *.html
  4556  16010 358659 aa.html
   374   2197 100457 a.html
  4930  18207 459116 总用量
[zcm@python #27]$


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值