如何在Python中读取Zip压缩包内目录中的HTM文件?
读取压缩包内HTM文件的Python实现
直接用Python标准库zipfile就能搞定,不用额外安装依赖,而且不需要解压整个压缩包,直接读取目标文件,效率很高。
代码示例
import zipfile # 替换成你的压缩包路径(比如C.zip) zip_file_path = "C.zip" # 压缩包内HTM文件的相对路径 target_htm_path = "B/A.htm" # 打开压缩包并读取目标文件 with zipfile.ZipFile(zip_file_path, "r") as zip_container: # 直接打开压缩包内的HTM文件 with zip_container.open(target_htm_path) as htm_file: # 读取内容并解码,注意根据文件实际编码调整(比如gbk、utf-8) htm_content = htm_file.read().decode("utf-8") # 这里可以添加你的业务逻辑,比如解析内容 print(htm_content)
关键说明
zipfile.ZipFile是Python内置的压缩包操作工具,支持直接访问压缩包内的文件,无需解压整个包- 编码问题:如果读取时出现编码错误,把
decode("utf-8")换成decode("gbk")(中文HTM文件常用编码),或者添加errors="ignore"忽略错误字符:decode("utf-8", errors="ignore") - 带密码的压缩包:如果压缩包有密码,初始化
ZipFile时加上pwd参数,比如zipfile.ZipFile(zip_file_path, "r", pwd=b"your_password")(密码需转为字节串) - 路径注意:确保压缩包路径和内部文件路径正确,绝对路径和相对路径都支持
内容的提问来源于stack exchange,提问作者HyunJu PARK
相关产品推荐
相关产品推荐

