Скрипт, который может скачать zip-файл с сервера
Можете ли вы помочь мне сделать скрипт на Python, который делает следующее:
- скачать zip файл http (у меня уже есть код для этого)
- скачать почтовый файл в
file://<server location>
У меня проблема с этим. расположение файла находится вfile://<server location>file.zip
не могу скачать файл №2:(
Код ниже, #1 работает при использовании HTTP, но при использовании file:////
это не работает. У кого-нибудь есть идея, как скачать ZIP-файл с file:////
?
import urllib2
response = urllib2.urlopen('file:////server/file.zip')
print response.info()
html = response.read()
# do something
response.close() # best practice to close the file
1 ответ
urllib2 не имеет обработчиков для file://
протокол; Я думаю, что он откроет локальные файлы, если не дано протокола (//server/file.zip
), но я никогда этим не пользовался и не проверял. Если у вас есть локальное имя файла, вы можете просто использовать open()
а также read()
а не urrlib2.
Ваш код будет проще, если вы используете with closing
(от contextlib
); открытые файлы уже являются менеджерами контекста в Python 2.7 и 3.x, поэтому их еще проще использовать.