공부한 내용 정리하는 공간입니다.
틀린 내용이 있을 수 있습니다.
모든 지적, 첨언 환영합니다.
오늘의 코드
1. FTP 서버에 접속하기
2. 디렉터리 목록 확인하고 새로운 폴더 생성하기
3. 파일을 FTP 서버로 업로드하기
import ftplib
def upload_file(ftp, filename):
with open(filename, 'rb') as f:
ftp.storbinary('STOR ' + filename, f)
hostname = "192.168.88.128"
ftp = ftplib.FTP(hostname)
ftp.login('ID', 'PW')
ftp.retrlines('LIST')
print("==========")
ftp.mkd('new_folder')
ftp.retrlines('LIST')
print("==========")
upload_file(ftp, 'output.txt')
ftp.retrlines('LIST')
ftp.quit()
def
새로운 함수를 정의
def 함수이름 (매개변수1, 매개변수2): 형태로 사용
FTP.storbinary('STOR ' + filename, A)
FTP 서버에 파일을 업로드하는 명령어
.storbinary() : 이진 파일(binary file)을 업로드할 때 사용하는 메서드
STOR : 파일을 저장하는 FTP 명령어
filename : 서버에 업로드할 파일의 이름
A : 파일 객체
이진 파일이 아닌 파일(텍스트 파일)을 rb모드로 열면 바이트 단위로 읽혀서 FTP 서버로 전송 가능
ftplib.FTP()
FTP 서버와 연결하기 위한 라이브러리 ftplib의 클래스를 호출
ftplib.FTP(FTP서버주소) 형태로 사용
FTP 프로토콜을 사용하여 파일을 전송하거나 서버와 상호작용하는 데 사용
FTP 서버와 연결을 설정하는 객체 생성하고 그 객체를 통해 파일 업로드, 다운로드 가능
FTP.login()
FTP 서버에 로그인하는 메서드
.login('ID', 'PW') 형태로 사용
FTP.retrlines()
FTP 서버에서 텍스트 데이터를 받아오는 명령어
서버에서 받은 텍스트 데이터를 한 줄씩 출력
'LIST' : 서버의 디렉토리 내용을 목록 형태로 반환하는 FTP 명령어
.retrlines('LIST') : 서버에 저장된 파일 및 디렉터리 목록을 텍스트 형태로 가져와서 출력
FTP.mkd()
FTP 서버에 새 디렉터리 생성
.mkd('디렉터리 이름') 형태로 사용
FTP.quit()
FTP 서버와 연결 종료
연결이 종료되면 FTP 명령을 실행할 수 없음
오늘의 코드
1. FTP 서버에 접속하기
2. 디렉터리 목록 확인하고 새로운 폴더 생성하기
3. 파일을 FTP 서버로 업로드하기
import ftplib
def upload_file(ftp, filename):
with open(filename, 'rb') as f:
ftp.storbinary('STOR ' + filename, f)
hostname = "192.168.88.128"
ftp = ftplib.FTP(hostname)
ftp.login('ID', 'PW')
ftp.retrlines('LIST')
print("==========")
ftp.mkd('new_folder')
ftp.retrlines('LIST')
print("==========")
upload_file(ftp, 'output.txt')
ftp.retrlines('LIST')
ftp.quit()
오늘의 코드 결과


오늘의 코드 설명
def upload_file(ftp, filename):
매개변수 ftp, filename을 갖고있는 함수 upload_file 생성
with open(filename, 'rb') as f:
filename으로 지정된 파일을 바이너리 읽기 모드로 열어서 f에 저장
ftp.storbinary('STOR ' + filename, f)
filename이라는 이름으로 파일 f를 FTP 서버에 업로드
1. FTP 서버에 접속하기
hostname = "192.168.88.128"
ftp = ftplib.FTP(hostname)
ftp.login('ID', 'PW')
hostname에 위치한 FTP 서버에 연결하는 객체 ftp를 생성하고 로그인
2. 디렉터리 목록 확인하고 새로운 폴더 생성하기
ftp.retrlines('LIST')
FTP 서버에서 현재 디렉터리의 파일 목록을 가져와서 출력
ftp.mkd('new_folder')
FTP 서버에 new_folder라는 새로운 디렉터리를 만듬
3. 파일을 FTP 서버로 업로드하기
upload_file(ftp, 'output.txt')
앞에서 정의된 upload_file 함수에 따라 output.txt 파일을 FTP 서버에 업로드
>output.txt를 바이너리 읽기 모드로 열어서 f에 저장
>192.168.88.128의 FTP 서버에 output.txt라는 이름으로 파일 f 업로드
ftp.quit()
FTP 연결 종료
'클라우드기반 스마트 융합보안 과정 > Python' 카테고리의 다른 글
| [Python] requests.post(), try: except A as B:, 딕셔너리[ ][ ] (0) | 2025.01.16 |
|---|---|
| [Python] zipfile.ZipFile(), ZIP.write(), ZIP.close() (0) | 2025.01.16 |
| [Python] .append(), for i in range(len()): (0) | 2025.01.16 |
| [Python] load_workbook() - 수식 포함, 미포함 (0) | 2025.01.15 |
| [Python] Workbook(), 워크북.active, 워크시트.title, 워크시트['셀 주소'], 셀 주소.value, 워크북.save() (0) | 2025.01.15 |