python进行rar、tar、unzip解压

Python批量解压ZIP与RAR文件:自动化处理与异常处理实战 文件压缩与解压是数据处理和系统运维中的基础操作,涉及ZIP、RAR等常见格式。其原理是通过算法减少文件体积,便于存储和传输。在自动化运维和数据分析场景中,批量解压技术能显著提升效率,减少人工操作错误。本文聚焦Python实现,利用zipfile标准库和rarfile第三方库,构建支持批量处理、异常捕获和日志记录的健壮解压工具。通过面向路径编程和幂等性设计,该工具能自动识别压缩格式,处理中文编码,并详细记录失败案例,适用于服务器日志解压、数据集整理等实际工程场景。 阅读详情

参考文章链接:https://blog.youkuaiyun.com/qq_22865879/article/details/120849457

1、python进行rar解压:

(1)、需要使用Python的rarfile工具包;

下载地址: http://sourceforge.net/projects/rarfile.berlios/files/rarfile-2.4.tar.gz/download

复制到Python安装文件夹的/Scripts 文件夹下,在当前窗体打开命令行,

输入pip install rarfile-2.4.tar.gz进行安装。

(2)、程序中使用

import os

import rarfile

unf= rarfile.RarFile(filename)

#需要有解压文件,指定解压程序的路径文件

rarfile.UNRAR_TOOL="C:\\Program Files\\WinRAR\\UnRAR.exe"

unf.extract(member=unf.namelist()[0],path=None,pwd=None) #这个解压文件包中的第几个文件

unf.extractall(destDir,members=None,pwd=None) #解压出来所有文件

2、gz: 即gzip。通常仅仅能压缩一个文件。与tar结合起来就能够实现先打包,再压缩。

因为gz一般仅仅压缩一个文件,全部常与其它打包工具一起工作。比方能够先用tar打包为XXX.tar,然后在压缩为XXX.tar.gz

解压gz,事实上就是读出当中的单一文件

def un_gz(file_name):

"""ungz zip file"""

f_name = file_name.replace(".gz", "")

#获取文件的名称,去掉

g_file = gzip.GzipFile(file_name)

#创建gzip对象

open(f_name, "w+").write(g_file.read())

#gzip对象用read()打开后,写入open()建立的文件里。

g_file.close()

#关闭gzip对象

3、tar: linux系统下的打包工具。仅仅打包。不压缩

XXX.tar.gz解压后得到XXX.tar,还要进一步解压出来。

注:tgz与tar.gz是同样的格式,老版本号DOS扩展名最多三个字符,故用tgz表示。

因为这里有多个文件,我们先读取全部文件名称。然后解压。例如以下:

注:tgz文件与tar文件同样的解压方法。

def un_tar(file_name):

# untar zip file"""

tar = tarfile.open(file_name)

names = tar.getnames()

if os.path.isdir(file_name + "_files"):

pass

else:

os.mkdir(file_name + "_files")

#因为解压后是很多文件,预先建立同名目录

for name in names:

tar.extract(name, file_name + "_files/")

tar.close()

4、zip: 不同于gzip。尽管使用相似的算法,能够打包压缩多个文件。只是分别压缩文件。压缩率低于tar。

与tar类似,先读取多个文件名称,然后解压。例如以下:

def un_zip(file_name):

"""unzip zip file"""

zip_file = zipfile.ZipFile(file_name)

if os.path.isdir(file_name + "_files"):

pass

else:

os.mkdir(file_name + "_files")

for names in zip_file.namelist():

zip_file.extract(names,file_name + "_files/")

zip_file.close()

Ubuntu下rar与unrar命令行工具完全指南:从安装到实战 在Linux系统中,文件压缩与解压是日常运维和开发中的基础操作。RAR作为一种专利压缩格式,以其高压缩比和分卷压缩功能在Windows平台广泛流行,但在Ubuntu等Linux发行版中并未预装支持。理解压缩算法的基本原理和跨平台文件交换的需求,有助于掌握在不同系统间高效处理归档文件的技术价值。本文聚焦于Ubuntu环境下处理RAR格式的核心工具rar和unrar,涵盖其安装方法、命令详解及常见问题解决方案。通过命令行操作,用户可以实现自动化脚本处理、批量解压以及创建带密码保护的压缩包,特别适用于服务器管理、 阅读详情

相关推荐

Python实现文件压缩和解压功能

Python提供了多种库和模块来实现文件的压缩和解压功能。根据不同的压缩格式和算法,我们可以选择相应的库和模块来实现文件的压缩和解压。通过使用Python,我们可以轻松地处理各种类型的压缩文件,并实现高效的文件压缩和解压。

这家伙很懒,什么都没有留下 2200

python调用rarfile报错RarCannotExec("Unrar not installed?

rar 由于rar通常为window下使用,须要额外的Python包rarfile。 可用地址:http://sourceforge.net/projects/rarfile.berlios/files/rarfile-2.4.tar.gz/download 解压到Python安装文件夹的/Scripts/文件夹下,在当前窗体打开命令行, 输入Pythonsetup.py...

3113

rar压缩包python解压

(如果解压器不在。

NLP与推荐算法 673

python实现rar解压和压缩

1、前期准备 python解压rar格式文件,需要安装rarfile模块,去网上下载rarfile,我这里下载的是rarfile-2.4.tar.gz,解压还需要对应的UnRAR.exe 2、工具安装 将rarfile-2.4.tar.gz拷贝到python安装路径的Scripts目录下: cmd进入到python的Scripts目录下运行pip install rarfile-2.4.tar.gz,安装成功如下图: 3、解压rar import os import rarfile base_p

sunnywalden 2万+

RAR Extractor.app.zip 背后:macOS 压缩包解压、密码恢复与损坏修复全攻略

压缩包是数据分发中最常见的封装形式,但面对 RAR、ZIP、7Z 等不同格式,用户常遇到解压失败、密码遗失、文件损坏等障碍。理解压缩格式的底层差异与封装原理,是解决这些问题的关键:RAR5 采用 AES-256 加密,不存在一键移除密码的后门;ZIP 的 ZipCrypto 在已知明文下可被快速破解;而像 EOCD 缺失、manifest missing 等报错,往往指向文件截断或环境权限问题。借助命令行工具(如 7z、unrar、hashcat)能实现批量解压、格式转换、密码恢复与损坏修复,并延伸至 An

weixin_34072458的博客 319

rarlinux-4.2.0.tar.gz(安装到linux下后,可以用rar、unrar命令)

rarlinux-4.2.0.tar.gz(安装到linux下后,可以用rar、unrar命令压缩或解压缩rar文件) 使用说明见:

批量解压到一半时中断 重新进行批量解压 选择未解压的进行解压

import glob import os import gzip import tarfile import zipfile import rarfile import time path = r'/root/projects/TransT/data/TrackingNet/TRAIN_0/TRAIN_0/zips' file_lst = glob.glob(path + '/*') filename_lst = [os.path.basename(i) for i in file_lst] # pri

G_inkk的博客 1574

SkyWalking跨线程Trace传递实战:手把手教你用RunnableWrapper解决异步链路中断问题

本文深入解析了SkyWalking在异步编程场景下链路追踪中断的根源,并提供了使用RunnableWrapper等官方包装类的实战解决方案。通过详细的原理解析和代码示例,手把手指导开发者如何实现跨线程的Trace传递,确保分布式系统监控链路的完整性,有效解决异步任务导致的链路中断问题。

sand8的博客 493

python解压密码_python的压缩包怎么解压密码-问答-阿里云开发者社区-阿里云

这里讨论使用Python解压如下五种压缩文件:.gz .tar .tgz .zip .rar简介gz: 即gzip,通常只能压缩一个文件。与tar结合起来就可以实现先打包,再压缩。tar: linux系统下的打包工具,只打包,不压缩tgz:即tar.gz。先用tar打包,然后再用gz压缩得到的文件zip: 不同于gzip,虽然使用相似的算法,可以打包压缩多个文件,不过分别压缩文件,压缩率低于ta...

weixin_39928818的博客 160

Bentley二次开发教程28-交互窗口-案例实战2-EC属性赋值工具

该工具会根据用户输入的路径获取Schema文件的路径,然后通过路径读取对应的Schema文件并在树状图中显示EC类,当用户选择树状图上的节点时,此时会触发事件,根据EC属性添加用户自定义控件用于显示EC属性并可对其进行赋值操作。完成后选取元素,点击界面上的应用,此时元素会被赋予指定EC类,同时修改的EC属性值也会被同步赋予。该工具涉及到的WinForm控件有:TextBox,Button,TreeView,Panel,UserControl(用户自定义控件)。

不见不散的博客 1474

ARS408毫米波雷达数据解析避坑指南:从硬件连接到Python处理

本文提供了ARS408毫米波雷达从硬件连接到Python数据处理的完整实战指南。针对串口通信不稳定、数据解析错误等常见问题,详细解析了硬件连接方案选择、串口数据高效读取策略、二进制协议解析的位操作技巧,并给出了坐标转换、目标跟踪及实时可视化的代码实现,帮助开发者快速搭建稳定的雷达数据处理流水线。

weixin_29091105的博客 149

python递归解压文件_python递归解压文件夹中所有压缩包

1 #!/usr/bin/env python32 #.zip .rar .tar .tgz .tar.gz .tar.bz2 .tar.bz .tar.tgz3 importos4 importzlib5 importunrar6 importshutil7 importzipfile8 importtarfile9 from time importsleep10 #from unrar imp...

weixin_39915820的博客 302

鸿蒙设备部署轻量级Web服务器NexServer实践

Web服务器作为互联网基础设施的核心组件,其轻量化部署在移动终端领域具有重要实践价值。本文以鸿蒙操作系统为技术载体,深入解析微内核架构如何通过资源隔离和分布式软总线实现服务高可用。重点探讨NexServer这一专为嵌入式场景设计的轻量级服务器,其ARM原生支持特性与15MB级内存占用,在HTTP/2协议处理与WebSocket通信中展现出独特优势。在智能家居控制面板、边缘计算节点等物联网典型场景中,鸿蒙设备结合NexServer的方案相比传统Nginx部署可降低60%资源消耗。通过实测数据对比,该组合在50

weixin_30411239的博客 481

Linux 常用命令记录

Linux解压 or 压缩文件命令和软件 解压zip文件: # 安装工具 sudo apt-get install unzip # 解压命令 unzip xxx.zip # 解压指定文件到指定目录 unzip /-/-/xxx.zip -d path 解压tar.gz文件 tar命令有以下参数 -c 压缩文件内容 -x 解压文件中的内容 -z 使用gzip来解压或压缩.tar.gz格式的文件 -v 压缩过程中显示文件 # 解压文件 tar -zxvf test.tar.gz tar -zxvf test

jikuidongke5461的博客 267

RK3588 Android12 添加HDMI和喇叭声音通道切换选项

rk3588 android12系统默认接hdmi out时,声音会切换到hdmi out输出,主板声卡喇叭输出会没有声音输出。现在添加一个选项设置hdmi out时,声音可以保持主板声卡喇叭输出。

Android系统开发笔记 4162

Ardupilot二次开发(二):自定义mavlivk消息

在下面的文件添加自定义消息的xml定义然后编译固件,会生成相应的消息头文件。

超维空间科技的博客 2312

关于文件的压缩与解压

1 #coding:utf-8 2 import tarfile 3 import zipfile 4 import rarfile 5 import os 6 import shutil 7 class parsePackage: 8 def __init__(self): 9 self.funcMap={'tar':self.unt...

weixin_30237281的博客 71

ardupilot 获取避障传感器数据

本节主要记录自己学ardupilot的避障代码过程,首先看下怎么注册避障传感器,然后怎么获取避障数据。

陌城烟雨 5524

Python zipfile解压文件

针对已有的压缩文件,使用zipfile,基本上都可以一键解压(rar,zip,tar,apk)等,在很多的文件上,并没有涉及可以解压APK文件没有涉及相关的代码,但是经过实际的检验,是可以一键解压的。在很多已有的博客上,我看到了很多是对zipfile 的方法介绍,并没有实际的代码来验证,这样对我实际工作的开展,也造成了效率的降低,因为我自己根本看不出来哪里不对呀!放上我自己完整的代码:def un...

sunny的博客 3282

Unity与iOS原生交互实战指南

C#(DllImport) → C 接口(extern "C") → Objective‑C / SwiftObjective‑C → UnitySendMessage → C#(GameObject + public 方法)在写.mm文件;在里面写;C# 用声明;调用它,参数就是 string / 数值等;在.mm里做你想做的 iOS 原生操作。在 Unity 里准备一个常驻 GameObject,比如;上面挂一个脚本,写;在 iOS 插件中用;

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 1357

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Python 解压zip、tar.gz、Rar 文件

一、说明 为了解决自己对解压文件带来的工作压力,着手编写解压代码,发现Python能够很快完成。本次只是试验性质,但已能达到目标。 注意:本代码里的路径是绝对路径,看客请注意,使用请结合情况再做修改。 二、代码 #!/usr/bin/python #-*-encoding:utf-8-*- importzipfile,rarfile importtarfile importos,shutil #################################...

shien00000xu的博客 544

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Mac解压Rar,7z,Zip,Winrar?Mac解压缩软件测评,推荐Mac上免费好用的解压软件,高效解压神器帮您解决苹果电脑的解压缩问题

Mac上如何解压Rar,7z,winrar呢?是否有免费好用的解压缩软件?测评主流解压软件The Unarchiver,Bandizip,Unzip One,keka,MacZip,Oka等,推荐​ Mac上免费解压缩软件全能解压Unzip One,解压神器,支持60多种解压格式,解压方便,快速,解压window创建的解压格式无乱码哦。 各个软件的使用和测评结果都展示给大家参考,希望帮大家选到免费、好用、高效的Mac解压缩软件,解决rar,7z,winrar,tar,gzip等解压问题。 ​.......

weixin_45739713的博客 6489

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

【Python 解压的几种方法】

gz: 即gzip。通常仅仅能压缩一个文件。与tar结合起来就能够实现先打包,再压缩。 gz 因为gz一般仅仅压缩一个文件,全部常与其它打包工具一起工作。比方能够先用tar打包为XXX.tar,然后在压缩为XXX.tar.gz 解压gz,事实上就是读出当中的单一文件 ''' 遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939 寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书! ''' def un_gz(file_name): """ung

qq_22865879的博客 5287

python解压

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 解压 ...

哟哟哟哟哟哟 243

python武功秘籍解压密码_压缩解压

Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩了,所以首先就来讲讲tar命令的基本用法:tar命令的选项有很多(用man tar可以查看到),但常用的就那么几个选项,下面来举例说明一下:# tar -cf all.tar *.jpg这条命令是将所有.jpg的文件打成一个名...

weixin_34112863的博客 1249

告别广告弹窗:开发者必备的纯净解压工具与自动化实战指南

文件压缩与解压是数据处理和软件部署中的基础操作,其核心原理是通过特定算法减少文件体积,便于存储和传输。在开发与运维领域,高效、稳定的解压能力直接影响自动化脚本、CI/CD流水线及环境部署的效率。然而,商业软件常捆绑的广告弹窗和推广进程,不仅干扰工作流,还可能引入安全风险与资源浪费。因此,选择功能纯粹、支持脚本化集成的开源解压方案,对于维护开发环境的整洁与安全至关重要。本文聚焦于7-Zip、tar、gzip等无广告工具,详细解析其在Windows、macOS、Linux多平台下的命令行与图形界面应用,并提供集

weixin_30448603的博客 388
上一篇: 如何用 Java 对 PDF 文件进行电子签章
下一篇: LSTM 神经网络(转)
兀兀术
博客等级 码龄19年 25粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值