diff options
author | Yves Fischer <yvesf-git@xapek.org> | 2014-11-22 20:54:32 +0100 |
---|---|---|
committer | Yves Fischer <yvesf-git@xapek.org> | 2014-11-22 20:54:32 +0100 |
commit | c08d2b4a03f89c6fe5384474febb2e2f93a25ee2 (patch) | |
tree | 3401a9a0bc3b54c9344aab4ee60766c72c6ebe3f /imdb-lookup/imdbinfo.py | |
parent | 58d309ed92dc37670635fb7c60a37d7fdada68bf (diff) | |
download | scripts-c08d2b4a03f89c6fe5384474febb2e2f93a25ee2.tar.gz scripts-c08d2b4a03f89c6fe5384474febb2e2f93a25ee2.zip |
css
Diffstat (limited to 'imdb-lookup/imdbinfo.py')
-rwxr-xr-x | imdb-lookup/imdbinfo.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/imdb-lookup/imdbinfo.py b/imdb-lookup/imdbinfo.py index 71fd5f7..7b23356 100755 --- a/imdb-lookup/imdbinfo.py +++ b/imdb-lookup/imdbinfo.py @@ -10,12 +10,14 @@ import base64 import argparse import math import logging +from StringIO import StringIO try: from urllib.parse import quote as urlencode except: from urllib import quote as urlencode try: + from PIL import Image import tmdbsimple as tmdb import requests except ImportError as e: @@ -104,8 +106,11 @@ class TMDBCache(object): p = self.poster(poster_path, format) if not p: return None contentType, data = p + image = Image.open(StringIO(data)) + buf = StringIO() + image.save(buf, "JPEG", quality=10, optimize=True) data64 = "".join(map(lambda c: isinstance(c,int) and chr(c) or c, - filter(lambda c: c!='\n', base64.encodestring(data)))) + filter(lambda c: c!='\n', base64.encodestring(buf.getvalue())))) return "data:{};base64,{}".format(contentType, data64) @@ -119,7 +124,8 @@ class Protector(object): return attr(*a,**kw) except KeyboardInterrupt as e: raise e - except: + except Exception as e: + logging.error("Error calling %s: %s", name, e) return None if callable(attr): return protected @@ -191,7 +197,7 @@ def do_index(args, imdb_ids): outfile = open("index.html", "wb") for output in stream: output = output.encode("utf-8") - outfile.write(output) + outfile.write(output.strip()) class HelpAction(argparse._HelpAction): def __call__(self, parser, namespace, values, option_string=None): |