У меня возникли проблемы с загрузкой нескольких сетевых файлов из онлайн-каталога. Я использую виртуальную среду Linux (Lubuntu) над VMware. Моя цель - получить доступ к подпапке и загрузить все файлы .gz, которые она содержит, в новый локальный каталог, отличный от домашнего каталога. Я попробовал несколько решений, и это самое близкое мне.Python: Загрузите несколько файлов .gz с одного URL
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
Похоже, что вам не хватает '.' после «обновлений» с URL-адреса http://data.ris.ripe.net/rrc00/2016.01/updates.20160128.0345.gz –