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

时间:2016-01-28 03:43:54

标签: python urllib

我无法从在线目录下载多个网络文件。我在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()

在线目录不需要身份验证,可以找到here链接。

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

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

1 个答案:

答案 0 :(得分:1)

查看网址

好网址:betf

错误的网址(您的代码):http://data.ris.ripe.net/rrc00/2016.01/updates.20160128.0245.gz

缺少更新和2016之间的点