[파이썬] 파일의 디렉토리 내 파일 다운로드

파이썬을 사용하여 파일의 디렉토리에서 파일을 다운로드하는 방법을 알아보겠습니다. 파일 다운로드는 웹 애플리케이션에서 흔히 사용되며, 파이썬을 사용하면 간단하게 구현할 수 있습니다.

1. URL을 사용하여 파일 다운로드

URL을 사용하여 파일을 다운로드하는 방법은 가장 간단한 방법 중 하나입니다. 다음은 urllib 라이브러리를 사용하여 파일을 다운로드하는 예제입니다.

import urllib.request

url = "http://example.com/file.txt"  # 다운로드할 파일의 URL
save_path = "/path/to/save/file.txt"  # 저장할 파일 경로 및 이름

urllib.request.urlretrieve(url, save_path)

위 코드에서 urlretrieve 함수는 지정된 URL에서 파일을 다운로드하고, 로컬 파일 시스템에 저장합니다. 다운로드 된 파일은 save_path 변수에 지정된 경로에 저장됩니다.

2. FTP를 사용하여 파일 다운로드

FTP (File Transfer Protocol)를 사용하여 파일을 다운로드하는 경우, ftplib 라이브러리를 사용할 수 있습니다. 다음은 FTP를 사용하여 파일 다운로드하는 예제입니다.

import ftplib

ftp = ftplib.FTP("example.com")  # FTP 서버의 주소
ftp.login("username", "password")  # FTP 서버의 로그인 정보

filename = "file.txt"  # 다운로드할 파일명
save_path = "/path/to/save/file.txt"  # 저장할 파일 경로 및 이름

with open(save_path, "wb") as file:
    ftp.retrbinary(f"RETR {filename}", file.write)

ftp.quit()

위 코드에서 FTP 클래스의 인스턴스를 생성한 후, login 메서드를 사용하여 FTP 서버에 로그인합니다. 그런 다음 retrbinary 메서드를 사용하여 파일을 다운로드하고, 로컬 파일 시스템에 저장합니다.

3. 패키지를 사용하여 파일 다운로드

공개적으로 제공되는 패키지를 사용하여 파일을 다운로드하는 방법도 있습니다. requests 라이브러리는 HTTP 요청과 응답을 간편하게 다룰 수 있는 패키지 중 하나입니다. 다음은 requests를 사용하여 파일을 다운로드하는 예제입니다.

import requests

url = "http://example.com/file.txt"  # 다운로드할 파일의 URL
save_path = "/path/to/save/file.txt"  # 저장할 파일 경로 및 이름

response = requests.get(url)
with open(save_path, "wb") as file:
    file.write(response.content)

위 코드에서 requests.get 함수를 사용하여 HTTP GET 요청을 보내고, content 속성을 사용하여 응답 데이터를 바이너리 형식으로 얻습니다. 그런 다음 open 함수를 사용하여 파일을 생성하고, write 메서드를 사용하여 응답 데이터를 파일에 작성합니다.

위의 방법 중 하나를 사용하여 파일의 디렉토리 내에서 파일을 다운로드 할 수 있습니다. 선택한 방법에 따라 적절한 라이브러리를 사용하고, 필요에 맞게 코드를 수정하여 사용하시기 바랍니다.