Скрипт, который может скачать zip-файл с сервера

Можете ли вы помочь мне сделать скрипт на Python, который делает следующее:

  1. скачать zip файл http (у меня уже есть код для этого)
  2. скачать почтовый файл в 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, поэтому их еще проще использовать.

Другие вопросы по тегам