> 백엔드 개발 > 파이썬 튜토리얼 > Python 3에서 문자열로 저장된 URL에서 파일을 다운로드하는 방법은 무엇입니까?

Python 3에서 문자열로 저장된 URL에서 파일을 다운로드하는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2024-11-04 06:48:01
원래의
239명이 탐색했습니다.

How to Download a File from a URL Stored as a String in Python 3?

문자열에 저장된 URL을 사용하여 Python 3에서 웹에서 파일을 다운로드하는 방법

Python 3의 웹 서버에서 문자열을 URL로 전달하면 바이트 입력을 요구하는 오류가 발생할 수 있습니다. 이 기사에서는 이 문제를 우회하고 파일을 성공적으로 검색할 수 있는 여러 가지 방법을 제시합니다.

urllib.request.urlopen 사용

웹페이지의 콘텐츠를 얻으려면 urllib를 활용하세요. .request.urlopen(). 이 함수는 응답 개체를 반환한 다음 변수로 읽을 수 있습니다.

<code class="python">import urllib.request

url = 'http://example.com/'
response = urllib.request.urlopen(url)
data = response.read()  # a `bytes` object</code>
로그인 후 복사

urlib.request.urlretrieve 사용

가장 간단한 방법으로 다운로드하고 파일을 저장하는 것은 urllib.request.urlretrieve를 활용하는 것입니다. 함수:

<code class="python">import urllib.request

url = 'http://example.com/file.txt'
urllib.request.urlretrieve(url, 'file.txt')</code>
로그인 후 복사

이 방법은 지정된 URL에서 파일을 다운로드하여 로컬에 'file.txt'로 저장합니다.

shutil.copyfileobj와 함께 urlib.request.urlopen 사용

다운로드 프로세스를 더 효과적으로 제어하려면 urllib.request.urlopen()을 사용하세요. 파일류 객체를 반환합니다. 그런 다음 이 객체는 quitil.copyfileobj()를 사용하여 실제 파일에 복사할 수 있습니다.

<code class="python">import urllib.request
import shutil

url = 'http://example.com/file.zip'
with urllib.request.urlopen(url) as response, open('file.zip', 'wb') as out_file:
    shutil.copyfileobj(response, out_file)</code>
로그인 후 복사

다운로드를 바이트로 저장

속도가 우선인 경우 다운로드한 데이터는 바이트열 객체에 직접 저장한 후 파일에 쓸 수 있습니다. 단, 이는 소규모 경우에만 적합합니다. 파일:

<code class="python">import urllib.request

url = 'http://example.com/icon.png'
with urllib.request.urlopen(url) as response, open('icon.png', 'wb') as out_file:
    data = response.read() # a `bytes` object
    out_file.write(data)</code>
로그인 후 복사

압축 파일 처리

서버가 임의 액세스를 지원하는 경우 urllib.request.urlopen()을 사용하여 압축 파일을 처리할 수도 있습니다.

<code class="python">import urllib.request
import gzip

url = 'http://example.com/archive.gz'
with urllib.request.urlopen(url) as response:
    with gzip.GzipFile(fileobj=response) as uncompressed:
        file_header = uncompressed.read(64) # a `bytes` object</code>
로그인 후 복사

이러한 방법 중 하나를 구현하면 개발자는 URL이 문자열로 저장됩니다.

위 내용은 Python 3에서 문자열로 저장된 URL에서 파일을 다운로드하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿