FTP 파이썬 컨트롤

많은 회사에서 FTP 연결프로그램으로 FileZilla를 사용 하고 있다. 이를 파이썬으로 연결하여 파일 업로드 및 다운로드를 하는 함수를 만들어 보았다. (향후 자동화에 해당 함수를 쓰기위함)
import paramiko
import os


host = 'APKRP-WFSR193'
port = 22
user = 'username'
password = 'password'

transport = paramiko.Transport((host,port))
transport.connect(username=user, password = password)
sftp = paramiko.SFTPClient.from_transport(transport)


 

def getftp(remote_path,local_path):
  # sftp = paramiko.SFTPClient.from_transport(transport)
  sftp.chdir('/')
  sftp.get(remote_path,local_path)
  # sftp.close()
  # transport.close()


 

def toftp(local_path,remote_path):
  # sftp = paramiko.SFTPClient.from_transport(transport)
  sftp.chdir('/')
  sftp.remove(remote_path)
  sftp.put(local_path,remote_path)

  # sftp.close()

  # transport.close()

def file_list(remote_path):
  sftp.chdir('/')
  return sftp.listdir(remote_path)

 

# getftp('AI_LNC_Summary_20230216.xlsx', r'C:\Users\gukim00\Desktop\DB추출\AI_LNC_Summary_20230216.xlsx')

# toftp( r'C:\Users\gukim00\Desktop\DB추출\PP2_2.xlsx','/path/PP2_2.xlsx')