Python:从单个 URL 下载多个 .gz 文件

Python: Download multiple .gz files from single URL

我在从联机目录下载多个网络文件时遇到问题。我在 VMware 上使用虚拟 Linux 环境 (Lubuntu)。 我的目标是访问一个子文件夹并将它包含的所有 .gz 文件下载到一个不同于主目录的新本地目录中。我尝试了多种解决方案,这是我得到的最接近的解决方案。

import os
from urllib2 import urlopen, URLError, HTTPError
def dlfile(url):
    # Open the url
    try:
        f = urlopen(url)
        print "downloading " + url

        # Open our local file for writing
        with open(os.path.basename(url), "wb") as local_file:
            local_file.write(f.read())

    #handle errors
    except HTTPError, e:
        print "HTTP Error:", e.code, url
    except URLError, e:
        print "URL Error:", e.reason, url


def main():
    # Iterate over image ranges
    for index in range(100, 250,5):
        url = ("http://data.ris.ripe.net/rrc00/2016.01/updates20160128.0%d.gz"
                %(index))
        dlfile(url)

if __name__ == '__main__':
    main()

在线目录不需要认证,可以找到一个linkhere

我尝试了字符串操作和对文件名使用循环,但它给了我以下错误:

HTTP Error: 404 http://data.ris.ripe.net/rrc00/2016.01/updates20160128.0245.gz

看看url

好url:http://data.ris.ripe.net/rrc00/2016.01/updates.20160128.0245.gz

错误 url(您的代码):http://data.ris.ripe.net/rrc00/2016.01/updates20160128.0245.gz

更新和 2016 年之间缺少一个点