python自动zip压缩目录的方法


Posted in Python onJune 28, 2015

本文实例讲述了python自动zip压缩目录的方法。分享给大家供大家参考。具体实现方法如下:

这段代码来压缩数据库备份文件,没有使用python内置的zip模块,而是使用了zip.exe文件

# Hello, this script is written in Python - http://www.python.org
#
# autozip.py 1.0p
#
# This script will scan a directory (and its subdirectories)
# and automatically zip files (according to their extensions).
#
# This script does not use Python internal ZIP routines.
# InfoZip's ZIP.EXE must be present in the path (InfoZip Dos version 2.3).
# (zip23x.zip at http://www.info-zip.org/pub/infozip/)
#
# Each file will be zipped under the same name (with the .zip extension)
# eg. toto.bak will be zipped to toto.zip
#
# This script is public domain. Feel free to reuse it.
# The author is:
#    Sebastien SAUVAGE
#    <sebsauvage at sebsauvage dot net>
#    http://sebsauvage.net
#
# More quick & dirty scripts are available at http://sebsauvage.net/python/
#
# Directory to scan is hardcoded at the end of the script.
# Extensions to ZIP are hardcoded below:
ext_list = ['.bak','.trn']
import os.path, string
def autozip( directory ):
  os.path.walk(directory,walk_callback,'')
def walk_callback(args,directory,files):
  print 'Scanning',directory
  for fileName in files:
    if os.path.isfile(os.path.join(directory,fileName)) and string.lower(os.path.splitext(fileName)[1]) in ext_list:
      zipMyFile ( os.path.join(directory,fileName) )
def zipMyFile ( fileName ):
  os.chdir( os.path.dirname(fileName) )
  zipFilename = os.path.splitext(os.path.basename(fileName))[0]+".zip"
  print ' Zipping to '+ zipFilename
  os.system('zip -mj9 "'+zipFilename+'" "'+fileName+'"')
autozip( r'C:\mydirectory' )
print "All done."

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

Python 相关文章推荐
python中bisect模块用法实例
Sep 25 Python
Python函数式编程指南(二):从函数开始
Jun 24 Python
python 实时遍历日志文件
Apr 12 Python
Django验证码的生成与使用示例
May 20 Python
python 计算两个日期相差多少个月实例代码
May 24 Python
Python编程之黑板上排列组合,你舍得解开吗
Oct 30 Python
django 实现编写控制登录和访问权限控制的中间件方法
Jan 15 Python
解决pycharm工程启动卡住没反应的问题
Jan 19 Python
Python assert语句的简单使用示例
Jul 28 Python
python使用sessions模拟登录淘宝的方式
Aug 16 Python
解决django中form表单设置action后无法回到原页面的问题
Mar 13 Python
Python 中的函数装饰器和闭包详解
Feb 06 Python
python查找指定具有相同内容文件的方法
Jun 28 #Python
python中getaddrinfo()基本用法实例分析
Jun 28 #Python
python实现搜索指定目录下文件及文件内搜索指定关键词的方法
Jun 28 #Python
分析用Python脚本关闭文件操作的机制
Jun 28 #Python
python实现linux下使用xcopy的方法
Jun 28 #Python
自动化Nginx服务器的反向代理的配置方法
Jun 28 #Python
python读取TXT到数组及列表去重后按原来顺序排序的方法
Jun 26 #Python
You might like
IIS+PHP+MySQL+Zend配置 (视频教程)
2006/12/13 PHP
php批量删除数据
2007/01/18 PHP
PHP5下$_SERVER变量不再受magic_quotes_gpc保护的弥补方法
2012/10/31 PHP
浏览器预览PHP文件时顶部出现空白影响布局分析原因及解决办法
2013/01/11 PHP
php实现CSV文件导入和导出
2015/10/24 PHP
如何重写Laravel异常处理类详解
2020/12/20 PHP
javascript语句中的CDATA标签的意义
2007/05/09 Javascript
如何确保JavaScript的执行顺序 之jQuery.html并非万能钥匙
2011/03/03 Javascript
使用jquery的ajax需要注意的地方dataType的设置
2013/08/12 Javascript
JS中如何设置readOnly的值
2013/12/25 Javascript
Iframe 自动适应页面的高度示例代码
2014/02/26 Javascript
Nodejs使用mysql模块之获得更新和删除影响的行数的方法
2014/03/18 NodeJs
Js为表单动态添加节点内容的方法
2015/02/10 Javascript
JSON字符串转JSON对象
2015/07/31 Javascript
全面解析多种Bootstrap图片轮播效果
2016/05/27 Javascript
表单元素值获取方式js及java方式的简单实例
2016/10/15 Javascript
JS跨域请求外部服务器的资源
2017/02/06 Javascript
vue如何从接口请求数据
2017/06/22 Javascript
nginx配置React静态页面的方法教程
2017/11/03 Javascript
基于vue,vue-router, vuex及addRoutes进行权限控制问题
2018/05/02 Javascript
react实现点击选中的li高亮的示例代码
2018/05/24 Javascript
JS实现数组去重,显示重复元素及个数的方法示例
2019/01/21 Javascript
Vue3.0结合bootstrap创建多页面应用
2019/05/28 Javascript
js实现课堂随机点名系统
2019/11/21 Javascript
JQuery Ajax如何实现注册检测用户名
2020/09/25 jQuery
Openlayers实现距离面积测量
2020/09/28 Javascript
Python编程中的文件操作攻略
2015/10/16 Python
tensorflow tf.train.batch之数据批量读取方式
2020/01/20 Python
django的403/404/500错误自定义页面的配置方式
2020/05/21 Python
使用HTML5 Canvas API控制字体的显示与渲染的方法
2016/03/24 HTML / CSS
土耳其风格手工珠宝:Ottoman Hands
2019/07/26 全球购物
工程测量与监理专业应届生求职信
2013/11/27 职场文书
勾股定理课后反思
2014/04/26 职场文书
敬老月活动总结
2014/08/28 职场文书
同学毕业留言寄语
2015/02/27 职场文书
小学少先队工作总结2015
2015/05/26 职场文书