Python实现向服务器请求压缩数据及解压缩数据的方法示例


Posted in Python onJune 09, 2017

本文实例讲述了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]$

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python查找第k小元素代码分享
Dec 18 Python
详解Django中的过滤器
Jul 16 Python
Python实现批量读取word中表格信息的方法
Jul 30 Python
基于Python Shell获取hostname和fqdn释疑
Jan 25 Python
Python设计模式之中介模式简单示例
Jan 09 Python
python实现二叉查找树实例代码
Feb 08 Python
Python中str.join()简单用法示例
Mar 20 Python
Python干货:分享Python绘制六种可视化图表
Aug 27 Python
python requests模拟登陆github的实现方法
Dec 26 Python
Python日期格式和字符串格式相互转换的方法
Feb 18 Python
Python 实现黑客帝国中的字符雨的示例代码
Feb 20 Python
python多进程 主进程和子进程间共享和不共享全局变量实例
Apr 25 Python
python爬虫框架talonspider简单介绍
Jun 09 #Python
python实现list元素按关键字相加减的方法示例
Jun 09 #Python
Python利用QQ邮箱发送邮件的实现方法(分享)
Jun 09 #Python
老生常谈python的私有公有属性(必看篇)
Jun 09 #Python
Python 自动化表单提交实例代码
Jun 08 #Python
Python错误: SyntaxError: Non-ASCII character解决办法
Jun 08 #Python
Python实现网站注册验证码生成类
Jun 08 #Python
You might like
php计算两个文件相对路径的方法
2015/03/14 PHP
PHP常见的序列化与反序列化操作实例分析
2019/10/28 PHP
javascript调试说明
2010/06/07 Javascript
javascript 二进制运算技巧解析
2012/11/27 Javascript
js中window.open()的所有参数详细解析
2014/01/09 Javascript
Javascript获取表单名称(name)的方法
2015/04/02 Javascript
详解JavaScript对象序列化
2016/01/19 Javascript
微信小程序 wxapp内容组件 text详细介绍
2016/10/31 Javascript
使用Bootstrap + Vue.js实现添加删除数据示例
2017/02/27 Javascript
Vue中使用Sortable的示例代码
2018/04/07 Javascript
Bootstrap开发中Tab标签页切换图表显示问题的解决方法
2018/07/13 Javascript
详解Require.js与Sea.js的区别
2018/08/05 Javascript
vue slots 组件的组合/分发实例
2018/09/06 Javascript
Vue 中的受控与非受控组件的实现
2018/12/17 Javascript
通过实例解析JavaScript for in及for of区别
2020/06/15 Javascript
解决vue单页面多个组件嵌套监听浏览器窗口变化问题
2020/07/30 Javascript
前端vue+elementUI如何实现记住密码功能
2020/09/20 Javascript
ant design vue中表格指定格式渲染方式
2020/10/28 Javascript
python多线程扫描端口示例
2014/01/16 Python
Python编程pygal绘图实例之XY线
2017/12/09 Python
Python实现的个人所得税计算器示例
2018/06/01 Python
Python学习小技巧总结
2018/06/10 Python
windows中安装Python3.8.0的实现方法
2019/11/19 Python
解决python-docx打包之后找不到default.docx的问题
2020/02/13 Python
馥蕾诗美国官网:Fresh美国
2019/10/09 全球购物
size?法国官网:英国伦敦的球鞋精品店
2020/03/15 全球购物
幼儿教师个人求职信范文
2013/09/21 职场文书
党的群众路线教育实践活动学习心得体会
2014/03/03 职场文书
升国旗仪式主持词
2014/03/19 职场文书
小学生学雷锋演讲稿
2014/04/25 职场文书
篮球比赛口号
2014/06/10 职场文书
文案策划岗位职责
2015/02/11 职场文书
2016秋季幼儿园开学寄语
2015/12/03 职场文书
DjangoRestFramework 使用 simpleJWT 登陆认证完整记录
2021/06/22 Python
vue3不同环境下实现配置代理
2022/05/25 Vue.js
Java+swing实现抖音上的表白程序详解
2022/06/25 Java/Android