Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Network
  • » Загрузка папки со всех содержимым на ftp [RSS Feed]

#1 Март 12, 2010 12:49:33

pyOut
От:
Зарегистрирован: 2006-07-16
Сообщения: 125
Репутация: +  0  -
Профиль   Отправить e-mail  

Загрузка папки со всех содержимым на ftp

Приветствую,

Помогите кодом. Нужно написать чтобы выбранная мною локальная папка заливалась на сервер со всем содержимым(подпапки в том числе). В сети нашел код только для залития файлов.



Офлайн

#2 Март 12, 2010 13:30:38

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

Загрузка папки со всех содержимым на ftp

pyOut
Помогите кодом. Нужно написать чтобы выбранная мною локальная папка заливалась на сервер со всем содержимым(подпапки в том числе). В сети нашел код только для залития файлов.
Нужно делать рекурсивный проход по папке/подпапкам и по одному заливать.



Офлайн

#3 Март 12, 2010 22:07:50

pyOut
От:
Зарегистрирован: 2006-07-16
Сообщения: 125
Репутация: +  0  -
Профиль   Отправить e-mail  

Загрузка папки со всех содержимым на ftp

regall, было бы лучше если бы ты предложил бы код :)
Вот что я написал, но при этом директории не создаются и не заливаются вместе с их содрежимым

import os, ftplib, operator 

handle = ftplib.FTP()
handle.connect('host', 21)
handle.login('user', 'pass')
handle.cwd('/WWW/')

local_path = '/some/folder/'

def ftp_upload(handle, filename):
f = open(filename, "rb")
(base, ext) = os.path.splitext(filename)
picext = ".bmp .jpg .jpeg .dib .tif .tiff .gif .png"
if(operator.contains(picext, ext)):
try:
handle.storbinary("STOR " + os.path.basename(filename), f, 1)
except Exception:
print "Failure upload."
else:
print "Successful upload."
f.close()
return

try:
handle.storbinary("STOR " + os.path.basename(filename), f)
except Exception:
print "Failure upload."
else:
print "Successful upload."
f.close()
return

for root, dirs, files in os.walk(local_path):
for name in files:
fullname = os.path.join(root, name)
#remote_path = fullname.replace(local_path, '')
ftp_upload(handle, fullname)



Офлайн

#4 Март 13, 2010 00:07:15

bazooka
От:
Зарегистрирован: 2009-04-12
Сообщения: 165
Репутация: +  0  -
Профиль   Отправить e-mail  

Загрузка папки со всех содержимым на ftp

pyOut
if(operator.contains(picext, ext)):
if ext in picext: # непроще?



Офлайн

#5 Март 15, 2010 10:11:12

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

Загрузка папки со всех содержимым на ftp

А как насчет модуля ftputil, который позволяет работать с ftp практически так же, как и с файловой системой?
документация на русском



Отредактировано (Март 15, 2010 10:12:56)

Офлайн

  • Начало
  • » Network
  • » Загрузка папки со всех содержимым на ftp[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version