- 압축 상태의 파일을 물리적 경로에 해제하지 않고 메모리에 해제 후 FTP 전송
def Sending_FTP_Server(news_id, xml_string : str, json_zip_file_path):
logger.info('# FTP SENDING START.')
session = ftplib.FTP()
session.connect('10.101.33.xxx', 21)
session.login('xxxxx', 'xxxxx')
session.encoding = 'UTF-8'
with zipfile.ZipFile(json_zip_file_path, 'r') as json_zip_file:
for file_name in json_zip_file.namelist():
bytes_io = io.BytesIO()
if '.json' in file_name.lower():
bytes_io.write(xml_string.encode())
bytes_io.seek(0)
session.storbinary('STOR ' + f'/Gisa/{news_id}.xml', bytes_io)
else:
zip_data = json_zip_file.read(file_name)
bytes_io.write(zip_data)
bytes_io.seek(0)
session.storbinary('STOR ' + f'/Gisa/{file_name}', bytes_io)
session.quit()
logger.info('# FTP SENDING SUCCESS')
return True