>백엔드 개발 >파이썬 튜토리얼 >Python에서 웹 URL의 이미지를 PIL 개체로 로드하는 방법은 무엇입니까?

Python에서 웹 URL의 이미지를 PIL 개체로 로드하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-15 14:35:03532검색

How to Load Images from Web URLs into PIL Objects in Python?

Python의 웹 URL에서 이미지 데이터 읽기

PIL(Python Imaging Library)을 사용하여 로컬 파일에서 이미지 데이터를 검색하는 것은 간단합니다. 그러나 원격 URL에 호스팅된 이미지에 액세스할 때 문제가 발생합니다. 이 기사에서는 중간 파일을 저장할 필요 없이 URL 소스에서 PIL 이미지 개체를 효율적으로 생성하기 위한 솔루션을 제공합니다.

Image.open(urlopen(url)) 사용 시 주요 문제는 검색을 사용할 수 없다는 것입니다. () 파일류 객체에 대한 메서드입니다. 이 문제를 해결하기 위해 Image.open(urlopen(url).read())을 시도할 수 있지만 이 접근 방식도 실패합니다.

다행히도 Python 3에는 실행 가능한 솔루션이 있습니다. io 모듈을 사용하면 URL에서 검색된 이미지 데이터로 직접 작업할 수 있습니다. 이를 달성하는 방법은 다음과 같습니다.

from PIL import Image
import requests
from io import BytesIO

response = requests.get(url)
img = Image.open(BytesIO(response.content))

이 스니펫은 먼저 요청 라이브러리를 사용하여 지정된 URL에서 이미지 데이터를 가져옵니다. 그런 다음 BytesIO 클래스는 원시 콘텐츠를 Image.open()에 직접 전달할 수 있는 파일 형식의 객체로 래핑하여 PIL 이미지 객체를 생성합니다.

이 접근 방식을 활용하면 다음에서 이미지 데이터를 효율적으로 로드할 수 있습니다. 임시 파일을 생성할 필요가 없는 URL로 이미지 처리 작업 흐름을 간소화합니다.

위 내용은 Python에서 웹 URL의 이미지를 PIL 개체로 로드하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.