Comment lire des données d’image à partir d’une URL en Python ?

| | | | | | |

Ce que j'essaie de faire est assez simple lorsqu'il s'agit d'un fichier local, mais le problème survient lorsque j'essaie de le faire avec une URL distante.

En gros, je suis essayant de créer un objet image PIL à partir d'un fichier extrait d'une URL. Bien sûr, je pourrais toujours récupérer l'URL et la stocker dans un fichier temporaire, puis l'ouvrir dans un objet image, mais cela semble très inefficace.

Voici ce que j'ai :

Image.open(urlopen(url)) 

Il se plaint que seek( ) n'est pas disponible, alors j'ai essayé ceci :

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

Mais cela n'a pas fonctionné non plus. Existe-t-il une meilleure façon de procéder, ou est-ce que l'écriture dans un fichier temporaire est la manière acceptée de faire ce genre de chose ?