当前位置:首页 > 网络技术 > rar压缩软件哪个好用(安卓rar解压工具使用步骤)(好用的rar解压软件)

rar压缩软件哪个好用(安卓rar解压工具使用步骤)(好用的rar解压软件)

longge2022-03-24 01:50:38网络技术124

一、前言

本文实现RAR批量解压的功能,通过python脚本调用WinRAR.exe解压文件时似乎不会再有广告框弹出。

二、实现

通过python调用WinRAR.exe程序实现RAR文件的批量解压,代码如下:

import argparse
import os

class RarExtractor:
    def __init__(self, in_dir="./", out_dir="./", pwds=None, exe=None):
        self.in_dir = in_dir
        self.out_dir = out_dir
        self.pwds = pwds if pwds else ['1234']
        self.exe = '"%s"' % exe if exe else '"C:Program FilesWinRARWinRAR.exe"'

    def extract_files(self, pwds, file_path, dst):
        if not os.path.exists(dst):
            os.mkdir(dst)

        if os.path.isdir(dst) and os.path.isfile(file_path):
            try:
                for pwd in pwds:
                    extract_cmd = r'%s x -y -p%s %s %s' % (self.exe, pwd, file_path, dst)
                    if os.system(extract_cmd) == 0:
                        print("Extract %s OK." % file_path)
                        return 0
                    else:
                        print("Extract %s failed." % file_path)
                        return -1
            except RuntimeError:
                print("error")
                return -1
        else:
            print('File not exist')
            return -1

    def extract_all_rar(self):
        for root, dirs, files in os.walk(self.in_dir):
            for f in files:
                (filename, ext) = os.path.splitext(f)
                if ext == '.rar':
                    file_path = os.path.join(root, f)
                    print(file_path)
                    self.extract_files(self.pwds, file_path, os.path.join(self.out_dir, filename))

def _parse_options():
    parser = argparse.ArgumentParser()
    parser.add_argument("--in_dir", action="store", dest="in_dir", required=True, help="Rar files dir")
    parser.add_argument("--out_dir", action="store", dest="out_dir", required=False, help="Extracted file dir")
    parser.add_argument("--pwds", nargs='+', action="store", dest="pwds", required=False,
                        help="Password list to extract Rar: --pwds 1111 2222 3333")
    parser.add_argument("--exe", action="store", dest="exe", required=False, help="RAR exe install path")
    return parser.parse_args()

if __name__ == '__main__':
    options = _parse_options()
    extractor = RarExtractor(options.in_dir, options.out_dir, options.pwds, options.exe)
    extractor.extract_all_rar()

需要传入的参数为:

  • –in_dir RAR文件所在目录,默认是当前目录
  • –out_dir 指定解压后输出的目录,默认是当前目录
  • –pwds 如果RAR是加密的,则需要指定解压密码,可以指定多个密码,以空格隔开
  • –exe 指定WinRAR.exe所在的目录,默认是”C:Program FilesWinRARWinRAR.exe”

三、测试

在目录D:rar_test下新建3个txt文件,使用RAR加密压缩,密码为1024、2048和4096。

通过以下命令测试:

python rar_extractor.py --in_dir D:rar_test --out_dir D:rar_test --pwds 1024 2048 4096 --exe "C:Program FilesWinRARWinRAR.exe"
免责声明
本站部分资源来源于互联网 如有侵权 请联系站长删除
龙哥网是优质的互联网科技创业资源_行业项目分享_网络知识引流变现方法的平台为广大网友提供学习互联网相关知识_内容变现的方法。#转载请注明出处!
  • 随机文章
  • 热门文章
  • 热评文章

“rar压缩软件哪个好用(安卓rar解压工具使用步骤)(好用的rar解压软件)” 的相关文章

老套的惯用商店促销手段(商家的促销手段有哪些)

老套的惯用商店促销手段(商家的促销手段有哪些)

临时租场促销,在开张的头一天,就表明“只卖7天,低价促销”。当7天过了之后,商家说法一变:“接厂家通知,再卖5天,降价促销”;5天的降价期限也过 了,怎么办?当然还得继续卖,“最后3天,买一送二”;就...

TO B企业布局短视频势在必行

TO B企业布局短视频势在必行

打败你的不是对手,颠覆你的不是同行,甩掉你的不是时代,而是传统思维和傲慢!最近,抖音向百度放开了蜘蛛抓取的权限,目前已经有近2亿个页面被百度收录。也就意味着,以后用户可以通过关键词在百度上搜索到抖音的...

折叠人群(4)—蔚来「新社群」破局之道(上):「超级用户」的崛起

折叠人群(4)—蔚来「新社群」破局之道(上):「超级用户」的崛起

尽管蔚来和特斯拉是智能/新能源汽车的两大头牌,但是他们拥有完全不同的增长逻辑,正如创始人李斌所说,蔚来追求的是“技术变革带来的情感的提升”。李斌认为,蔚来是用户养成型企业,跟其他传统汽车企业和特斯拉相...

游戏创意视觉设计全能班(全能游戏设计师)

游戏创意视觉设计全能班(全能游戏设计师)

课程介绍没有一个人天生就可以成为原画师、插画师。想成为一个合格的游戏美术视觉设计师,也不是想象的那么简单。不论是角色设计、道具设计、配色构思、动作设计和场景设计,每一样都要精通,本课程将带你走进游戏美...

古风角色设计班(古风人物设计)

古风角色设计班(古风人物设计)

课程介绍 该课程为古风角色设计班,内容涵盖头像绘制、头饰设计、角色设计入门、服装与配饰、素材应用、完整主题角色设计等内容!古风向原创角色设计,各种类型的配饰创意,老师独家私藏自制素材分享,挑...

微信公众号高颜值排版术,从小白变身排版达人(排版高级的公众号)

微信公众号高颜值排版术,从小白变身排版达人(排版高级的公众号)

课程介绍零基础小白,自己就是公号号主,但除了会码字放点图,连视频和音频都不会插入的同学作为编辑或号主,你可能会遇到这些困惑:明明写的文章也很好,粉丝也不少,可阅读量总是十分惨淡,打开率和转发量特别低?...