unrar解压_用Python写解压缩的脚本文件

废话不多说,直接上码

压缩文件

提前要安装一下zipfile的包哟!

#没有zipfile包的童鞋请打开你的cmd
#pip install zipfile
import zipfile
import os
def zipping(startdir):
    file_new = startdir+'.zip'
    z = zipfile.ZipFile(file_new,'w',zipfile.ZIP_DEFLATED)
    for dirpath, dirnames, filenames in os.walk(startdir):
        #fpath = dirpath.replace(startdir,'')
        #fpath = fpath and fpath + os.sep or ''
        for filename in filenames:
            z.write(os.path.join(dirpath,filename))
            
    z.close()
while(1):
    startdir = input("Input the dir")
    if startdir=="":
        startdir = pyperclip.paste()
        print(startdir)
    zipping(startdir)
    print("success")

打包好的程序会直接在上级目录里显示。

解压文件

需要提前安装unrar 和pypclip包哟,和上边的一样pip install unrar/pypclip ,就完事了~

有打包成".rar" 和 ".zip"的两种方法,运行脚本后想打包成rar的话输入1,zip的话输入2

import os
import zipfile
import pyperclip
from unrar import rarfile

case = input("rar=1 zip=2:")

if case == str(1):
    dir1 = input("请输入要解压的路径,或者将路径贴到粘贴板上")
    if dir1 =="":
        dir1 = pyperclip.paste()
        print(dir1)
    dir2 = input("请输入解压到的路径,或将路径粘贴到剪切板上")
    if dir2 =="":
        dir2 = pyperclip.paste()
        print(dir2)
    file =rarfile.RarFile(dir1)
    file.extractall(dir2)


if case == str(2):
    dir1 = input("请输入要解压的路径,或者将路径贴到粘贴板上")
    if dir1 =="":
        dir1 = pyperclip.paste()
        print(dir1)
    dir2 = input("请输入解压到的路径,或将路径粘贴到剪切板上")
    if dir2 =="":
        dir2 = pyperclip.paste()
        print(dir2)

    if zipfile.is_zipfile(dir1):
        zp = zipfile.ZipFile(dir1,'r')
        for file in zp.namelist():
            zp.extract(file,dir2)

上面的脚本可以指定解压到的地址,嫌麻烦的童鞋可以直接ctrl+c一下,把要解压或解压到的地址贴到剪切板上。是不是很贴心~


更加炫酷的功能

hunkydory:用CMD来运行python文件​zhuanlan.zhihu.com
c257aca1d8adb5067f7ae36a1e1c9a19.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值