Python PIL: IOError: ne peut pas identifier le fichier image
Je suis en train d'essayer d'obtenir l'image à partir de l'URL suivante:
image_url = http://www.eatwell101.com/wp-content/uploads/2012/11/Potato-Pancakes-recipe.jpg?b14316
Lorsque je navigue dans un navigateur, assurez-vous que cela ressemble à une image. Mais j'obtiens une erreur lorsque je tente:
import urllib, cStringIO, PIL
from PIL import Image
img_file = cStringIO.StringIO(urllib.urlopen(image_url).read())
image = Image.open(img_file)
IOError: ne peut pas identifier le fichier image
J'ai copié des centaines d'images de cette façon, donc je ne suis pas sûr de ce qui est spécial ici. Puis-je obtenir cette image?
OriginalL'auteur user984003 | 2013-06-18
Vous devez vous connecter pour publier un commentaire.
Le problème ne réside pas dans l'image.
À l'aide de l'agent utilisateur en-tête permettra de résoudre le problème.
Cette heder a également été nécessaire pour certaines autres images: ('Accepter', 'text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8')
OriginalL'auteur KostasT
quand j'ouvre le fichier à l'aide de
Ce n'est pas le retour d'une image.
Vous pouvez essayer en spécifiant un en-tête user-agent pour voir si vous pouvez tromper le serveur en pensant que vous êtes un navigateur.
À l'aide de
requests
de la bibliothèque (car il est plus facile d'envoyer des informations d'en-tête)OriginalL'auteur dm03514
Pour obtenir une image , vous pouvez enregistrer d'abord l'image, puis , de le charger de PIL . par exemple:
OriginalL'auteur Reza-S4