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语言
Mar 20 Python
使用pycharm生成代码模板的实例
May 23 Python
Python返回数组/List长度的实例
Jun 23 Python
Python单元测试简单示例
Jul 03 Python
判断python字典中key是否存在的两种方法
Aug 10 Python
详解如何管理多个Python版本和虚拟环境
May 10 Python
python的debug实用工具 pdb详解
Jul 12 Python
Python 调用有道翻译接口实现翻译
Mar 02 Python
Python操作Excel工作簿的示例代码(\*.xlsx)
Mar 23 Python
Python字典取键、值对的方法步骤
Sep 30 Python
GitHub上值得推荐的8个python 项目
Oct 30 Python
Python爬虫基础讲解之请求
May 13 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字符串截取问题
2006/11/28 PHP
php简单对象与数组的转换函数代码(php多层数组和对象的转换)
2011/05/18 PHP
Nginx环境下PHP flush失效的解决方法
2016/10/19 PHP
PHPExcel实现表格导出功能示例【带有多个工作sheet】
2018/06/13 PHP
PHP7 错误处理机制修改
2021/03/09 PHP
使用jQuery简单实现模拟浏览器搜索功能
2014/12/21 Javascript
《JavaScript高级编程》学习笔记之object和array引用类型
2015/11/01 Javascript
JAVASCRIPT代码编写俄罗斯方块网页版
2015/11/26 Javascript
JavaScript使用DeviceOne开发实战(三)仿微信应用
2015/12/02 Javascript
深入理解JQuery中的事件与动画
2016/05/18 Javascript
基于iScroll实现下拉刷新和上滑加载效果
2017/07/18 Javascript
修改 bootstrap table 默认detailRow样式的实例代码
2017/07/21 Javascript
详解自定义ajax支持跨域组件封装
2018/02/08 Javascript
nodejs中密码加密处理操作详解
2018/03/20 NodeJs
解决vue项目axios每次请求session不一致的问题
2020/10/24 Javascript
[28:05]完美世界DOTA2联赛循环赛Inki vs DeMonsTer 第一场 10月30日
2020/10/31 DOTA
Python学习笔记整理3之输入输出、python eval函数
2015/12/14 Python
pycharm 配置远程解释器的方法
2018/10/28 Python
Python处理PDF与CDF实例
2020/02/26 Python
django 利用Q对象与F对象进行查询的实现
2020/05/15 Python
Elasticsearch py客户端库安装及使用方法解析
2020/09/14 Python
浅谈HTML5 服务器推送事件(Server-sent Events)
2017/08/01 HTML / CSS
新百伦折扣店:Joe’s New Balance Outlet
2016/08/20 全球购物
雅诗兰黛澳大利亚官网:Estée Lauder澳大利亚
2019/05/31 全球购物
温泉秘密:Onsen Secret
2020/07/06 全球购物
如何判断计算机可能已经中马
2013/03/22 面试题
英文自我鉴定
2013/12/10 职场文书
买房子个人收入证明
2014/01/16 职场文书
篝火晚会策划方案
2014/05/16 职场文书
联谊活动总结
2014/08/28 职场文书
新党章心得体会
2014/09/04 职场文书
公安交警中队队长个人对照检查材料思想汇报
2014/10/05 职场文书
党员自我剖析材料(群众路线)
2014/10/06 职场文书
2015年社区环境卫生工作总结
2015/04/21 职场文书
婚礼答谢词范文
2015/09/29 职场文书
Mysql数据库表中为什么有索引却没有提高查询速度
2022/02/24 MySQL