Skip to main content
 首页 » 编程设计

python之通过 FTP 下载 zip 文件并在 Python 中提取内存中的文件

2025年05月04日9落叶无声

我正在尝试通过 ftp 下载一个 zip 文件,然后在没有实际保存 zip 的情况下解压缩文件。知道我该怎么做吗?

请您参考如下方法:

使用zipfile.open

它将存档中的一个成员打开到内存中。由于 ZipFile 接受任何类似文件的对象作为参数,您可以从许多来源获取它,例如 HTTP/FTP 服务器

import urllib 
import io 
from zipfile import ZipFile 
 
mysock = urllib.urlopen('ftp://ftp.yourhost.com/spam.zip')  // check urllib for parameters 
memfile = io.BytesIO(mysock.read()) 
with ZipFile(memfile, 'r') as myzip: 
    f = myzip.open('eggs.txt') 
    content = f.read()  // or other file-like commands 

同时检查 Python in-memory zip library