I'm using the following code to retrieve an image online:
import Image
import urllib2
import cStringIO
url = 'http://storage.googleapis.com/bloomsky-img/k65x5Kvpyc3W08jBqJ1kqZqnnZapoQ==.jpg'
img = urllib2.urlopen(url).read()
# error occurred when executing the line below
im = Image.open(cStringIO.StringIO(img))
im.verify()
# must reload the image after verify method !!
im = Image.open(cStringIO.StringIO(img))
im.save('name', 'JPEG')
When run, it gives me image not valid and error code is cannot identify image file <StringIO.StringIO instance at 0x7f6825b12e18>
error. But the same code works perfect on my mac. Only when I deployed the code to an Ubuntu server, did I encounter such issue. I checked the documentations and I think I'm using StringIO
in the correct way. Can anybody help? Thanks a lot.
I just installed Pillow on a nearly fresh Ubuntu 14.04, using pip install Pillow
. The installation was successful. However, take a look on the installation summary:
--------------------------------------------------------------------
PIL SETUP SUMMARY
--------------------------------------------------------------------
version Pillow 2.8.2
platform linux2 2.7.6 (default, Mar 22 2014, 22:59:56)
[GCC 4.8.2]
--------------------------------------------------------------------
*** TKINTER support not available
(Tcl/Tk 8.6 libraries needed)
*** JPEG support not available
*** OPENJPEG (JPEG2000) support not available
--- ZLIB (PNG/ZIP) support available
*** LIBTIFF support not available
*** FREETYPE2 support not available
*** LITTLECMS2 support not available
*** WEBP support not available
*** WEBPMUX support not available
--------------------------------------------------------------------
To add a missing option, make sure you have the required
library, and set the corresponding ROOT variable in the
setup.py script.
To check the build, run the selftest.py script.
changing mode of build/scripts-2.7/pilconvert.py from 644 to 755
changing mode of build/scripts-2.7/pildriver.py from 644 to 755
changing mode of build/scripts-2.7/pilfile.py from 644 to 755
changing mode of build/scripts-2.7/pilprint.py from 644 to 755
changing mode of build/scripts-2.7/pilfont.py from 644 to 755
changing mode of [...]
Successfully installed Pillow-2.8.2
See the *** JPEG support not available
over there? I think that's the key...