当前位置: 首页 > news >正文

使用 Python 进行批量解压 .rar 文件

在进行解压 .rar 文件之前,需要进行下载外部工具包,参考以下地址:

WinRAR archiver, a powerful tool to process RAR and ZIP filesWinRAR is a Windows data compression tool that focuses on the RAR and ZIP data compression formats for all Windows users. Supports RAR, ZIP, CAB, ARJ, LZH, TAR, GZip, UUE, ISO, BZIP2, Z and 7-Ziphttps://www.rarlab.com/download.htm

具体代码:

import os
import rarfile

# rar文件批量解压

rarfile.UNRAR_TOOL = r"E:\PyCharm\MyProjects\MyPythonTest01\MyProject\UnRAR.exe"


def extract_rar_files(base_directory):
    # 1.遍历目标文件以及以下的子文件
    for root, dirs, files in os.walk(base_directory):
        for filename in files:
            # 1.1 筛选需要进行解压的文件,并拼接路径
            if filename.endswith(".rar"):
                rar_path = os.path.join(root, filename)
                # 1.2 创建解压目录
                extract_dir = os.path.join(root, filename[:-4])
                os.makedirs(extract_dir, exist_ok=True)

                # 2.解压 RAR 文件
                try:
                    with rarfile.RarFile(rar_path) as rf:
                        rf.extractall(path=extract_dir)
                    print(f"解压完成: {rar_path} -> {extract_dir}")
                except rarfile.Error as e:
                    print(f"解压失败: {rar_path} - {e}")


if __name__ == "__main__":
    # 包含 RAR 文件的根目录
    rar_file = r"C:\Users\DELL\Desktop\2025.02.21"
    extract_rar_files(rar_file)

以上的 rarfile.UNRAR_TOOL 后面对应的是 unrar.exe 的绝对路径,其中,unrar.exe 放在当前 .py 文件相同包下进行引用最好

相关文章:

  • 基于Python的药物相互作用预测模型AI构建与优化(上.文字部分)
  • 架构思维:架构的演进之路
  • Wireshark简单教程
  • 【蓝桥杯集训·每日一题2025】 AcWing 5437. 拐杖糖盛宴 python
  • 【数据库】常见的数据库和它们的适用场景
  • 【Android】用 chrome://inspect/#devices 调试H5页面
  • DeepSeek在MATLAB上的部署与应用
  • IP-------GRE和MGRE
  • ubuntu-server 安装 navidia 显卡驱动
  • 深圳南柯电子|医疗设备EMC测试整改检测:零到一,保障医疗安全
  • 机器视觉--线扫相机触发
  • DeepSeek 高效提问指南
  • 半精度 单精度 双精度 概述
  • 学习路程五 向量数据库Milvus操作
  • 基于全志T527+FPGA全国产异步LED显示屏控制卡/屏幕拼接解决方案
  • web安全——web应用程序技术
  • [Web 安全] PHP 反序列化漏洞 —— PHP 序列化 反序列化
  • flowable-ui 的会签功能实现
  • 云原生架构原则
  • LabVIEW形状误差测量系统
  • 人民网:激发博物馆创新活力,让“过去”拥有“未来”
  • 80后女博士黄双燕拟提名为内蒙古盟市政府(行署)副职人选
  • 巴菲特最新调仓:一季度大幅抛售银行股,再现保密仓位
  • 梅花奖在上海|话剧《主角》:艺术与人生的交错
  • 长期吃太饱,身体会发生什么变化?
  • 一图读懂丨创新创业人才最高补贴500万元!临港新片区发布创客新政“十二条”