精华内容
下载资源
问答
  • 2022-03-30 18:49:53

    使用python实现嵌套压缩包解压@TOC

    因为一些需要自己写了一个小工具耍耍。
    主要使用的是zipfile和py7zr库,在此感谢几位大佬的文章的帮助!链接附在最后

    import os
    import zipfile
    import py7zr
    
    # 第一层解压zip文件
    def un_zip(filename):  # filename是文件的绝对路径
        zip_file = zipfile.ZipFile(filename)
        # 判断同名文件夹是否存在,若不存在则创建同名文件夹
        if os.path.isdir(os.path.splitext(filename)[0]):
            pass
        else:
            os.mkdir(os.path.splitext(filename)[0])
        for names in zip_file.namelist():
            zip_file.extract(names, os.path.splitext(filename)[0]) # 输出路径
        zip_file.close()
    
    
    # 第二层解压7z文件(只要是相同尾缀的压缩文件均可解压)
    def un_7z(filename, out_path):
        with py7zr.SevenZipFile(filename, mode='r', password='123') as z:
            z.extractall(out_path)
    
    
    if __name__ == '__main__':
        path = r'D:\zipfile_ex'
        # 遍历文件夹搜索所有图像。注意:此处输出的是图像名字,为字符串类型,需要单独打开图像
        for fname in os.listdir(path):
            if fname.endswith('.zip'):
                file_path = os.path.join(path, fname)
        # 解压文件并删除压缩包
        un_zip(file_path)
        os.remove(file_path)
        # 打开第一层文件夹
        sevenz_path = os.path.join(path, fname.split('.')[0])
        # 打开第二层文件夹
        sevenz_path2 = os.path.join(sevenz_path, fname.split('.')[0])
        # 获取第二层压缩文件,并修改尾缀为7z
        for fname1 in os.listdir(sevenz_path2):
            if fname1.endswith('.7z删除'):
                file_path1 = os.path.join(sevenz_path2, fname1)
                sevenz_name = os.rename(os.path.join(sevenz_path2, fname1), os.path.join(sevenz_path2, fname1.split('.')[0] + '.7z'))
        # 获取修改名字后的压缩文件
        for fname2 in os.listdir(sevenz_path2):
            if fname2.endswith('.7z'):
                file_path2 = os.path.join(sevenz_path2, fname2)
    
        un_7z(file_path2, sevenz_path2)
        os.remove(file_path2)
    

    zip解压方法
    7z解压方法
    晚上回去测试了一下,发现一个问题,就是一个文件夹里只能有一个压缩包,否则就会出错,于是做了一些改进,并且加了一个输出的文件夹,这样结果就更加简洁,条理相对清楚。
    主函数里加了一些嵌套,并且在第一个循环里加了一个filename = fname,这样就可以使压缩包和获取的名字对应,也可以理解问把压缩包打开。

    if __name__ == '__main__':
        path = r'E:\ZHAQI'
        # 遍历文件夹搜索所有图像。注意:此处输出的是图像名字,为字符串类型,需要单独打开图像
        for fname in os.listdir(path):
            if fname.endswith('.zip'):
                file_path = os.path.join(path, fname)
                filename = fname # 获取准确名字
                # 解压文件并删除压缩包
                un_zip(file_path)
                # os.remove(file_path)
                # 打开第一层文件夹
                sevenz_path = os.path.join(path, filename.split('.')[0])
                # 打开第二层文件夹
                # sevenz_path2 = os.path.join(sevenz_path, fname.split('.')[0])
                # 获取第二层压缩文件,并修改尾缀为7z
                for fname1 in os.listdir(sevenz_path):
                    if fname1.endswith('.7z删除'):
                        file_path1 = os.path.join(sevenz_path, fname1)
                        sevenz_name = os.rename(os.path.join(sevenz_path, fname1), os.path.join(sevenz_path, fname1.split('.')[0] + '.7z'))
                    # 获取修改名字后的压缩文件
                    for fname2 in os.listdir(sevenz_path):
                        if fname2.endswith('.7z'):
                            file_path2 = os.path.join(sevenz_path, fname2)
    
                    un_7z(file_path2, sevenz_path)
    

    同时,在解压7z文件后增加了一个文件夹。

    # 第二层解压7z文件(只要是相同尾缀的压缩文件均可解压)
    def un_7z(filename, out_path):
        # 判断同名文件夹是否存在,若不存在则创建同名文件夹
        if os.path.isdir(os.path.splitext(filename)[0]):
            pass
        else:
            os.mkdir(os.path.splitext(filename)[0])
        sevenz_ex_path = os.path.join(out_path, os.path.splitext(filename)[0])
        with py7zr.SevenZipFile(filename, mode='r', password='123') as z:
            z.extractall(sevenz_ex_path)
    
    更多相关内容
  • java压缩包解压

    2018-06-25 11:21:48
    java压缩包解压及中文文件名乱码处理,对应jar包和测试代码
  • 易语言模块文件压缩解压.rar
  • 程序为 batch_unzip.py,用了os, pathlib, sys, glob, shutil 等库,解压指定文件夹下所有 zip 类型压缩包。提供两种解压方式,一种是先为每个压缩文件创建同名的目录,然后解压到新建的目录中;第二种是直接解压到...
  • MinGW 压缩包 免安装解压直接用 MinGW 压缩包 免安装解压直接用
  • ZIP格式压缩包是大家经常使用的压缩包文件格式,也经常会给压缩包文件设置加密,但是有些时候设置了加密的压缩包大家不经常使用,就会导致忘记密码,当我们想要解压文件的时候就发现没办法解压了。想要找回密码的...
  • 进行传递都会转换为压缩包的形式进行压缩打包发送传输,这样就可以一下子多个文件信息进行压缩发送,对我们进行操作很是方便快捷,但是接收到压缩包文件后我们怎样操作进行压缩包解压呢?将压缩包的文件解压为一...

    我们对于电脑中的多个数据信息文件都会放在一个文件夹中,进行传递都会转换为压缩包的形式进行压缩打包发送传输,这样就可以一下子把多个文件信息进行压缩发送,对我们进行操作很是方便快捷,但是接收到压缩包文件后我们怎样操作进行压缩包的解压呢?将压缩包的文件解压为一个文件夹的原始状态,这样就方便我们接收使用,下面就一起来学习下如何操作解压压缩包。
    首先第一步我们需要选择需要进行解压的目标压缩包。
    如图:
    在这里插入图片描述

    第二步我们选中压缩包之后,使用鼠标右键点击压缩包,然后在出现的选项中选择“解压文件”。
    如图:
    在这里插入图片描述

    第三步单击解压文件选项按钮后,会出现一个解压路径和选项窗口,我们可以在窗口中进行操作设置,可以选择将文件解压的放置位置,方便我们进行对文件的查找。
    如图:
    在这里插入图片描述

    第四步在解压路径和选项中设置好需要的选项,然后点击确定按钮。
    如图:
    在这里插入图片描述

    第五步确认好设置以及解压文件保存的位置我们的压缩包就解压完毕了,我将解压文件储存位置保存到了桌面,然后压缩包的文件解压后就出现在了桌面中。
    如图:
    在这里插入图片描述

    我们大家可以通过这个方法来操作压缩包解压文件,很方便且使用,解压完毕后我们就可以便捷的使用文件夹中的文件信息了,希望可以对大家有所帮助,感谢大家的观看。

    展开全文
  • 自用的免费SecureCRT资源分享 自用的免费SecureCRT资源分享 绝对没有病毒 绝对没有病毒 压缩包解压即用
  • 批量解压多个zip压缩包并将解压出来的文件以该压缩包的名称重命名(跟要处理的文件放一起运行) 需要安装WinRAR软件。
  • Python 3.3下载后解压缩,里边Python和pip都有,绝对好用
  • linux中的压缩包解压方法 zip: 压缩: zip [-AcdDfFghjJKlLmoqrSTuvVwXyz][−b<工作目录>][−ll][−n<字尾字符串>][−t<日期时间>][−<压缩效率>][压缩文件][文件...][−i<范本样式>]...

    linux中的压缩包解压方法

    zip:
    压缩:
    zip [-AcdDfFghjJKlLmoqrSTuvVwXyz ] [ − b < 工 作 目 录 > ] [ − l l ] [ − n < 字 尾 字 符 串 > ] [ − t < 日 期 时 间 > ] [ − < 压 缩 效 率 > ] [ 压 缩 文 件 ] [ 文 件 . . . ] [ − i < 范 本 样 式 > ] [ − x < 范 本 样 式 > ] 解 压 : u n z i p [ 选 项 ] 压 缩 文 件 名 . z i p 选 项 :     − x 文 件 列 表 解 压 缩 文 件 , 但 不 包 括 指 定 的 f i l e 文 件 。     − v 查 看 压 缩 文 件 目 录 , 但 不 解 压 。     − t 测 试 文 件 有 无 损 坏 , 但 不 解 压 。     − d 目 录 把 压 缩 文 件 解 到 指 定 目 录 下 。     − z 只 显 示 压 缩 文 件 的 注 解 。     − n 不 覆 盖 已 经 存 在 的 文 件 。     − o 覆 盖 已 存 在 的 文 件 且 不 要 求 用 户 确 认 。     − j 不 重 建 文 档 的 目 录 结 构 , 把 所 有 文 件 解 压 到 同 一 目 录 下 。 例 子 : 例 1 : 将 压 缩 文 件 t e x t . z i p 在 当 前 目 录 下 解 压 缩 。     ][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时间>][-<压缩效率>][压缩文件][文件...][-i <范本样式>][-x <范本样式>] 解压: unzip [选项] 压缩文件名.zip 选项:    -x 文件列表 解压缩文件,但不包括指定的file文件。    -v 查看压缩文件目录,但不解压。    -t 测试文件有无损坏,但不解压。    -d 目录 把压缩文件解到指定目录下。    -z 只显示压缩文件的注解。    -n 不覆盖已经存在的文件。    -o 覆盖已存在的文件且不要求用户确认。    -j 不重建文档的目录结构,把所有文件解压到同一目录下。 例子: 例1:将压缩文件text.zip在当前目录下解压缩。     ][b<>][ll][n<>][t<>][<>][][...][i<>][x<>]unzip[].zip  xfile  v  t  d  z  n  o  j1text.zip   unzip text.zip
       例2:将压缩文件text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,要求unzip命令不覆盖原先的文件。
       $ unzip -n text.zip -d /tmp
      例3:查看压缩文件目录,但不解压。
       $ unzip -v text.zip
       zgrep命令
       这个命令的功能是在压缩文件中寻找匹配的正则表达式,用法和grep命令一样,只不过操作的对象是压缩文件。如果用户想看看在某个压缩文件中有没有某一句话,便可用zgrep命令。

    bz:
    bzip2 -d FileName.bz
    bunzip2 FileName.bz

    bz2:
    使用 bunzip2 linux-2-4-2.tar.bz2 生成 linux-2-4-2.tar
    使用tar xvf linux-2-4-2.tar 得到最终文件。

    或者直接使用
    tar jxvf linux-2-4-2.tar.bz2

    z:
    uncompress FileName.Z --解压
    compress FileName --压缩
    gz:
    *.gz 用 gzip -d或者gunzip 解压

    tar:(打包,不是解压)
    tar –xvf file.tar //解压 tar包

    总结
    1、.tar 用 tar –xvf 解压
    2、
    .gz 用 gzip -d或者gunzip 解压
    3、.tar.gz和.tgz 用 tar –xzf 解压
    4、.bz2 用 bzip2 -d或者用bunzip2 解压
    5、
    .tar.bz2用tar –xjf 解压
    6、.Z 用 uncompress 解压
    7、
    .tar.Z 用tar –xZf 解压
    8、.rar 用 unrar e解压
    9、
    .zip 用 unzip 解压

    展开全文
  • Android 应用开发源码 参考与学习使用
  • 压缩包解压工具

    2017-08-11 11:34:05
    用于各类压缩包解压
  • 御剑套装压缩包解压使用
  • jdk1.6,1.7,1.8的压缩包,解压直接可用!java的jdk,可以用于开发工具的jdk版本切换!
  • 概要【发布于2019年09月27日,由UnCutData数据恢复】我的压缩包解压后文件丢失了,能恢复吗?如果您从互联网上下载了许多程序和文件,可能会遇到很多压缩文件,而压缩包是压缩文件或压缩文件夹的载体,将压缩包进行...

    概要

    【发布于2019年09月27日,由UnCutData数据恢复】

    001gif.gif

    我的压缩包解压后文件丢失了,能恢复吗?

    如果您从互联网上下载了许多程序和文件,可能会遇到很多压缩文件,而压缩包是压缩文件或压缩文件夹的载体,将压缩包进行解压操作后,能够得到对应压缩文件的原始文件,但是有时解压后没有得到文件就会非常令人困惑了。

    xfq190927801.png

    “我的客户给我发送了一个包含很多照片的压缩包,明天就急着要用,当我把它解压之后却发现并没有照片,真的很奇怪,为什么会这样?最糟糕的是在解压之后我就将放在D盘的压缩包删除了,真的是太让人着急了,有没有什么办法能帮我找回删除的压缩包吗?”

    小知识——解压后没有文件的原因

    xfq190927802.png

    1、如果您收到的压缩包内本身没有文件,那么解压后自然就找不到文件,您可以核对原来下载的压缩包里面是否包含目标文件;

    2、如果您在下载压缩包的过程中出现错误,也会导致解压后找不到文件,您可以更换别的下载方式重新下载一遍,然后再进行解压操作;

    3、解压出错,如果您的压缩包有解压密码,那么如果密码出错,解压出来的文件夹也会是空文件,请您核对解压密码是否正确;

    4、如果压缩包损坏,或者是压缩包本身文件已经损坏了,解压不出来文件也是非常常见的事情。

    您的疑惑是否已经得到解答了呢?不过不管是什么原因,都得从压缩包身上找原因,那么最关键的就是如何恢复已经删除的压缩包,下面就来为您介绍一种最有效的无损恢复方法。

    使用UnCutData Recovery Wizard Free恢复您的压缩包

    UnCutData Recovery Wizard Free是一款适用于不同损失情况的一体化免费数据恢复软件,在三个简单快捷的步骤之后,您重要的压缩包就能够重新回到您的手中了。

    现在就让UnCutData Recovery Wizard Free来告诉您,它是如何通过下面具体的步骤,为您找回急需的压缩包,让您不再焦虑的。

    步骤一:进入软件选择丢失数据的格式

    首先请您打开UnCutData Recovery Wizard Free,出现在您眼前的是数据的格式选择界面。

    界面里有两行代表文件格式的图标,您需要做的是选择压缩包格式的文件,而这个格式并没有单独列出来,那么您可以勾选第一行左起最后一个图标,代表其他格式。

    勾选完成后,在图标右下角会出现一个带着对勾的小圆圈,这个时候您就可以点击右端的“下一步”按钮了。如下图所示。

    xfq190927803.png

    步骤二:选择压缩包原本所在的磁盘

    这时出现在您面前的,是对磁盘进行选择的界面,接下来您需要做的就是选择您删除的压缩包原本所在的磁盘。

    您的压缩包原本是存储在D盘的,那么请您选择D磁盘,在选中之后,磁盘名称那一行的最右端会出现一个有着对勾的小圆圈,这个时候您就可以点击右上方的“扫描”按钮对您的D磁盘进行扫描了。如下图所示。

    xfq190927804.png

    对原盘进行扫描检索

    扫描需要一定时间,时间的长短是由您的D磁盘中存有的文件来决定的,文件类型越复杂,文件大小越大,扫描的时间就越长。如下图所示。

    正常情况下,如果您的磁盘内存有2G左右的各类格式的文件,大概需要几分钟即可完成全部扫描,还请您心等待。

    xfq190927805.png

    步骤三:选择您需要的压缩包进行恢复

    扫描完成后,您就能通过界面左侧栏浏览您D盘中的所有文件了。

    这时需要您一级一级进行浏览,然后找到您删除的压缩包并进行选中,然后点击右上角的“恢复”按钮。如下图所示。

    xfq190927806.png

    如果在扫描之后您并没有找到您需要的压缩包文件,您也无需担心,UnCutData Recovery Wizard Free提供有两种进行扫描的方式,一种就是刚刚进行的快速扫描,这种扫描方式的优点在于速度快,但是一些深层文件可能扫描不出来。

    在这种深度文件没有被检索出的情况下,深度扫描会帮您检索到需要的压缩包,但是用时稍长,这个时候请您点击界面上端黄色字体的“深度扫描”按钮,更加深入的扫描即刻开始,请您再次耐心等待。如下图所示。

    xfq190927807.png

    深度扫描完成后,找到被删除的压缩包,选中并点击“恢复”按钮,此时您的压缩包就完好无损的回到您的手中了。如下图所示。(为了取得更好的恢复效果,建议在扫描丢失文件的时候,先进行快速扫描,再进行深度扫描。)

    xfq190927808.png

    以上就是UnCutData Recovery Wizard Free为您找回误删除的压缩包的具体操作方法,整个流程简单易懂,即便您是刚入门的电脑小白,又或者从未接触过数据恢复软件,也能快速上手,轻松掌握。

    如果您需要UnCutData Recovery Wizard Free,您可以通过下方的链接获取正版,并且还有免费版本供您体验,免费版支持恢复的数据大小为200M。如果您仍心存疑虑,那么不妨看看使用过这款软件的里昂先生是怎么进行评价的吧。

    “当解压并删除原始压缩包然后发现并没有预想的大批量照片时,我的内心的慌乱的,不过还好我让自己平静下来并去搜索了数据恢复软件,然后在短短几分钟内,UnCutData找回了我删除的压缩包,让我彻底平静了下来,它的恢复能力和恢复效果简直是完美!”

    版权申明:https://www.365huifu.com/article/compressed-packet-recovery.html

    相关文章

    展开全文
  • nginx压缩包免安装,解压即用
  • 软件介绍: AZip档案解压工具是一款开源的支持查看zip文件程序内容、解压、提取等功能解压工具,能够解压JAR/ZIP格式压缩包,可将任意文件或文件夹打包为ZIP压缩文件。
  • Java中递归逻辑循环调用解压zip里面所有的压缩包 Java中递归逻辑循环调用解压zip里面所有的压缩包
  • Android 在线下载压缩包解压到指定目录
  • 写了一个简单的下载压缩包解压到指定文件夹,看了其他的demo感觉都太复杂,这里只需要设置两个路径即可,清楚简单明了
  • java实现解压压缩包的jar包和源码,主要针对格式有7z,rar,zip,附带一个日志打印以及其他的几个文件操作的小功能。路径配置在FileHelper.java类的main函数中,可以封装到配置文件中去。
  • 压缩包解压密码怎么破

    千次阅读 2021-08-04 10:34:37
    从网上下载的资源大多数都是以压缩包形式被下载下来,我们需要通过解压压缩包拿到我们想要的文件,但是有时候可能会遇到解压压缩包的时候需要密码的情况,那压缩包解压秘密该怎么破解呢?如果文件资源对你来说很重要...
  • Keil uVision5 MDK V5.10Keil软件压缩包解压密码,百度云下载
  • 我是在解压zip包后出现的文件名乱码,我的解压工具使用的是bandzip 解决方法: 在解压前在bandzip中设置语言 选项 --> 设置 --> 解压 --> 在默认代码页一栏设置语言 然后再次解压文件即可! ...
  • 下面小编就为大家分享一篇php 解压zip压缩包内容到指定目录的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 解压后,运用redis-server.exe,然后再运行redis-cli.exe,在里面输入ping,如果下面出现pong,则redis启用成功
  • 环境: Win10 专业版 360压缩4.0.0.1280 问题描述: 360压缩包解压文件名乱码 解决方案: 1.更改压缩包语言-简体中文,解决
  • 压缩包里面解压有两个资源包 可以选择Linux环境tar包或者win上的zip github太慢,上传供大家下载
  • Java实现Zip压缩包解压

    万次阅读 2019-06-17 19:32:34
    对zip压缩包解压是比较常见的应用场景,java代码的实现也很简单。废话不多说,直接上代码吧 一、代码 /** * zip解压 * @param srcFile zip源文件 * @param destDirPath 解压后的目标文件夹 * @throws ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 241,515
精华内容 96,606
关键字:

怎么把压缩包解压

友情链接: trayicon.rar