用代码解压、压缩

首先,通过程序或者命令行解压,有什么好处呢?

  • 1.更可控,可完成批量任务、定时任务
  • 2.可用与破解密码。用程序不断地试呗
  • 3.压缩和解压是一样的嘛。

我是用python来做各种麻烦、重复的事。
推荐帖子:http://www.cnblogs.com/flyhigh1860/p/3884842.html

1.zip文件

'''******************  解压zip  ***************** '''
import zipfile
f = zipfile.ZipFile('jieya.zip', mode='r')
for file in f.namelist():
    f.extract(file,"temp/")
f.close()
'''*******************  压缩zip  ***************'''
f = zipfile.ZipFile('./yasuo.zip','w',zipfile.ZIP_DEFLATED) # ./yasuo.zip 表示压缩到当前路径下的yasuo.zip
f.write('ys_test.txt','test.py') # 前者是代压缩文件,后者是压缩后的文件名
f.close()

2.RAR文件

这种文件需要额外安装unrar模块,这篇帖子不错
http://blog.csdn.net/big_talent/article/details/52367184
不过,我并没有成功。碰到的报错信息:不是有效的win32位有效程序。
突然想到了,利用现有压缩软件的命令行模式!
由于我用的是360压缩器嘛,首先就找到安装目录下的rar.exe

  • 1.cmd进入当前路径
  • 2.查看帮助(摘主要的)
    rar.exe /?

用法: rar <命令> -<开关 1> -<开关 N> <压缩文件> <文件...><@列表文件...> <解压路径>
<命令>:
a 添加文件到压缩文件
e 解压压缩文件到当前目录
<开关>:
bla bla ...

于是经过一番尝试,找到了正确的使用方法

rem 解压到当前目录
rar  e test.rar
rem 解压到指定目录(111目录好像需要已存在)
rar x test.rar .\111

更多的操作,就看帮助,摸索把。我已经给出例子了

你可能感兴趣的:(用代码解压、压缩)