Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中提取windows cabinet文件_Python - Fatal编程技术网

如何在python中提取windows cabinet文件

如何在python中提取windows cabinet文件,python,Python,在python中提取.cab文件有可能吗?奇怪的是,只能创建或附加到.cab文件,但不能提取它们:( 但是,解析器模块显然可以读取和编辑文件柜。(不过,我没有使用过它,所以我无法告诉您它是否合适!)没有严格地回答您的问题,但是如果您在windows平台上运行,您可以生成一个进程来为您执行此操作 摘自维基百科: Microsoft Windows提供了两个 用于创建和编辑的命令行工具 提取CAB文件。它们是 MAKECAB.EXE(包含在Windows中) 诸如“ie501sp2.exe”和 'o

在python中提取.cab文件有可能吗?

奇怪的是,只能创建或附加到.cab文件,但不能提取它们:(


但是,解析器模块显然可以读取和编辑文件柜。(不过,我没有使用过它,所以我无法告诉您它是否合适!)

没有严格地回答您的问题,但是如果您在windows平台上运行,您可以生成一个进程来为您执行此操作

摘自维基百科:

Microsoft Windows提供了两个 用于创建和编辑的命令行工具 提取CAB文件。它们是 MAKECAB.EXE(包含在Windows中) 诸如“ie501sp2.exe”和 'orktools.msi';也可从 SDK,请参见下文)和EXTRACT.EXE (包括在安装CD上), Windows XP还提供 EXPAND.EXE命令


上周我也遇到了同样的问题,所以我用python实现了这个功能。欢迎评论、添加,特别是请求拉取:

更新了当前hachoir.parser文档的链接,我还使用了
msilib
,可以确认它只能创建CAB文件,并且只能使用MSZIP压缩。没有LZX压缩(尚未),到目前为止还没有提取方法。我也尝试用python实现它;但我不了解LZX压缩。MS提供的文档没有帮助。有没有关于如何提取或打包python cabarchive的示例?我似乎无法实现这一点。10年后,但这就是我目前在Windows中提取cab文件的方法而且它似乎可以工作:
subprocess.run(['expand','file.cab','extracted.file'])