使用 Urllib 下载 Python 3.5 的 Zip 文件夹

Download Zip Folder with Python 3.5 using Urllib

我正在尝试使用 urllib 和 python 3.5 从网站下载 zip 文件夹列表。 Urllib.request.urlretrieve 文档说您可以检索文件,但不能检索 zip 文件夹。下面是 url 的示例:https://www.inegi.org.mx/contenidos/programas/enoe/15ymas/microdatos/2005trim1_dta.zip。大多数示例显示 read/write 到新文件,这对上面的 url 不起作用,因为该文件夹有五个文件。

如有任何帮助,我们将不胜感激!

如果没有任何特殊原因需要您使用 urrlib,您应该明确检查 requests,这是一个专门用来解决你遇到的问题的库。

这是一个简单的函数,您可以使用请求库下载几乎所有文件

import requests

def downloadFile(url):
    local_filename = url.split("/")[len(url.split("/")) -1]
    req = requests.get(url, stream=True)
    with open(local_filename, 'wb') as fl:
        for chunk in req.iter_content(chunk_size=1024): 
            if chunk: 
                fl.write(chunk)

# The file will be saved as "2005trim1_dta.zip"
downloadFile("https://www.inegi.org.mx/contenidos/programas/enoe/15ymas/microdatos/2005trim1_dta.zip")

请注意我是如何使用 requests.get() 下载文件的。

如果您对请求感兴趣,我建议您在 http://docs.python-requests.org/en/master/ 查看其文档,因为它非常清晰简洁