Возможно ли соединение Django и ftplib?
Я пытаюсь загрузить файл с сервера Django на другой FTP-сервер, используя ftplib
Вот что я пытаюсь сделать в файле views.py
@background(schedule=1)
def uploadToFTP(folder):
"""
Async function to upload the images to FTP Server.
"""
print("-------------------Start FTP ----------------------------")
#establish ftp connection
ftp = FTP(conf_settings.FTP_DOMAIN,conf_settings.FTP_USER, conf_settings.FTP_PASSWORD)
file = os.path.join(folder, filename)
ftp.storbinary('STOR ' + filename, file,102400) # send the file
Я получаю всевозможные ошибки вроде этой:
ftp.storbinary('STOR ' + filename, file,102400)
File "/opt/anaconda3/lib/python3.8/ftplib.py", line 489, in storbinary
buf = fp.read(blocksize)
AttributeError: 'str' object has no attribute 'read'
Я перепробовал множество методов, но ничего не помогает. Возможно ли это вообще.
Вот руководство, с которым вам следует сначала ознакомиться
Вот такой же вопрос, который вы должны проверить во вторую очередь
Вот пример правильного кода:
with FTP( conf_settings.FTP_DOMAIN, conf_settings.FTP_USER, conf_settings.FTP_PASSWORD ) as ftp: with open(os.path.join(folder, filename), 'rb') as file: ftp.storbinary(f'STOR {filename}', file)