ARTICLE · 1009916
Python开发从零开始-50.57-Office 文档处理
接上文Python开发从零开始-50.56-Office 文档处理,本文小编与大家分享 Python 处理 Office 文档的相关知识。
3、处理 7z 文档
(1)7z 文档简介
7z 文档是由开源压缩软件 7-Zip 定义的高压缩比归档文件格式,后缀通常为 .7z,是目前主流的高效压缩格式之一。7z 文档需使用 7-Zip、WinRAR等第三方软件打开,ChromeOS 等现代系统已逐步内置 7z 格式支持 。7z 文档的主要特性包括:
开源架构:格式完全公开,支持任意压缩、转换和加密算法,不受商业专利限制,7-Zip 软件本身完全免费可商用;
高压缩率:默认采用 LZMA / LZMA2 算法,压缩率比普通 ZIP 格式高 30%~70%,相同内容生成的文件体积更小;
安全能力:原生支持 AES-256 军用级加密,密码通过 SHA-256 多次迭代生成密钥,暴力破解难度极高,还可加密压缩包文件名列表,保护文件隐私;
大文件支持:理论最大支持单文件约 160 亿 GB(16EB),完全满足超大体积数据的归档需求;
其他特色:支持固实压缩(将所有文件作为单一数据流压缩,进一步提升同类文件的压缩率)、分卷压缩、Unicode 文件名,还可生成自解压 EXE 包,无需解压软件即可打开。
(2)使用 py7zr 库处理 7z 文档
py7zr 是一个纯 Python 实现的第三方库,它支持直接通过 Python 代码创建、读取和解压 .7z 文档。py7zr 官方文档地址:
https://py7zr.readthedocs.io/en/stable/
1)安装 py7zr
可以使用 pip 直接安装 py7zr
pip install py7zr但是使用 Windows 操作系统的朋友可能会出现安装报错,最常见的错误包括:
Windows 上缺少 C++ 编译环境:py7zr 需要编译 C/C++ 扩展模块,可以在安装 Microsoft C++ Build Tools 之后,再进行 py7zr 安装,下载和安装过程可能需要较长时间;
依赖包不存在:py7zr 非独立文件,还依赖其他库(如 pyppmd),需要根据提示安装相应依赖包;
依赖包版本不匹配:对依赖包(如 pyppmd)的版本有严格限制,但当前环境不匹配。
如果出现安装报错,建议先到 PyPI 下载 py7zr 的 whl 文件,然后 whl 文件下载目录,在终端中使用 pip 命令安装,例如:
pip install F:\Downloads\py7zr-1.1.3-py3-none-any.whlpy7zr-1.1.3-py3-none-any.whl 文件名附带版本信息,py3 表示支持 Python3,none 表示不依赖特定系统,any 表示通用平台。
py7zr 安装后提供 py7zr 命令行工具,在终端中输入以下命令查看版本,并测试是否安装成功:
py7zr --version终端显示如下图所示:

py7zr 命令行工具,可直接在终端操作 7z 文档,可以在终端中使用以下命令,查看命令说明:
py7zr --help终端显示如下图所示:

受文章篇幅所限,下文将继续介绍 Python 处理 Office 文件的相关知识。