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 중국어 웹사이트의 기타 관련 기사를 참조하세요!