def handleResponse(self, request, data): try: isImage = getattr(request, 'isImage') except AttributeError: isImage = False if isImage: try: image_type = request.imageType #For some reason more images get parsed using the parser #rather than a file...PIL still needs some work I guess p = Image.Parser() p.feed(data) im = p.close() im = im.transpose(Image.ROTATE_180) output = StringIO() im.save(output, format=image_type) data = output.getvalue() output.close() logging.info("Flipped image") except Exception as e: print "Error: %s" % e return {'request': request, 'data': data}