Jak odczytać dane obrazu z adresu URL w Pythonie?

| | | | | | |

To, co próbuję zrobić, jest dość proste, gdy mamy do czynienia z plikiem lokalnym, ale problem pojawia się, gdy próbuję to zrobić ze zdalnym adresem URL.

Zasadniczo jestem próbuję utworzyć obiekt obrazu PIL z pliku wyciągniętego z adresu URL. Oczywiście, zawsze mógłbym po prostu pobrać adres URL i zapisać go w pliku tymczasowym, a następnie otworzyć go w obiekcie obrazu, ale to jest bardzo nieefektywne.

Oto, co mam:

Image.open(urlopen(url)) 

Odpada narzekanie, że szuka( ) nie jest dostępny, więc spróbowałem tego:

Image.open(urlopen(url).read()) 

Ale to też nie zadziałało. Czy istnieje lepszy sposób na zrobienie tego, czy też zapisanie do pliku tymczasowego jest akceptowanym sposobem robienia tego typu rzeczy?