fixes #2356: set User-Agent edumed
authorRadek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>
Fri, 7 Sep 2012 11:08:16 +0000 (13:08 +0200)
committerRadek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>
Fri, 7 Sep 2012 11:09:09 +0000 (13:09 +0200)
librarian/__init__.py
librarian/cover.py

index 616e351..c46d5d1 100644 (file)
@@ -8,6 +8,8 @@ from __future__ import with_statement
 import os
 import re
 import shutil
+import urllib
+
 
 class UnicodeException(Exception):
     def __str__(self):
@@ -272,3 +274,8 @@ class OutputFile(object):
         if not os.path.isdir(dirname):
             os.makedirs(dirname)
         shutil.copy(self.get_filename(), path)
+
+
+class URLOpener(urllib.FancyURLopener):
+    version = 'FNP Librarian (http://github.com/fnp/librarian)'
+urllib._urlopener = URLOpener()
index a2de837..be34e26 100644 (file)
@@ -6,7 +6,7 @@
 import re
 import Image, ImageFont, ImageDraw, ImageFilter
 from StringIO import StringIO
-from librarian import get_resource, OutputFile
+from librarian import get_resource, OutputFile, URLOpener
 
 
 class TextBox(object):
@@ -225,19 +225,16 @@ class WLCover(Cover):
         self.kind = book_info.kind
         self.epoch = book_info.epoch
         if book_info.cover_url:
-            from urllib2 import urlopen
-            from StringIO import StringIO
-
             url = book_info.cover_url
             bg_src = None
             if image_cache:
                 from urllib import quote
                 try:
-                    bg_src = urlopen(image_cache + quote(url, safe=""))
+                    bg_src = URLOpener().open(image_cache + quote(url, safe=""))
                 except:
                     pass
             if bg_src is None:
-                bg_src = urlopen(url)
+                bg_src = URLOpener().open(url)
             self.background_img = StringIO(bg_src.read())
             bg_src.close()
         else: