Lecture des données d'image à partir d'une URL en Python
Lorsque vous travaillez avec des fichiers locaux, la lecture des données d'image est simple. Cependant, lors de la gestion des URL distantes, le processus devient plus complexe. Dans cet article, nous explorerons comment lire et manipuler efficacement les données d'image à partir d'URL à l'aide de Python.
Les premières tentatives d'ouverture d'un objet image directement à l'aide de urlopen(url) échouent en raison de l'absence de la fonctionnalité seek(). De plus, tenter d'ouvrir une image à l'aide de urlopen(url).read() rencontre également des problèmes.
Pour résoudre ce problème, Python 3 propose une solution plus élégante, exploitant la classe BytesIO :
from PIL import Image import requests from io import BytesIO response = requests.get(url) img = Image.open(BytesIO(response.content))
Cette approche élimine le besoin de fichiers temporaires intermédiaires, rationalisant ainsi le processus et améliorant l'efficacité. La bibliothèque de requêtes est utilisée pour récupérer les données d'image tandis que BytesIO fournit une représentation en mémoire d'un objet de type fichier. Cela permet à PIL d'opérer directement sur les données d'image en mémoire, évitant ainsi le besoin de stockage de fichiers local.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!