From: Radek Czajka Date: Fri, 7 Sep 2012 11:08:16 +0000 (+0200) Subject: fixes #2356: set User-Agent X-Git-Tag: 1.7~145 X-Git-Url: https://git.mdrn.pl/librarian.git/commitdiff_plain/1ffcf32a8d795681f54bd125ca45e908da5ed3fb?ds=inline;hp=8059679abd4a0a2e554457dd6266941a31356f73 fixes #2356: set User-Agent --- diff --git a/librarian/__init__.py b/librarian/__init__.py index 616e351..c46d5d1 100644 --- a/librarian/__init__.py +++ b/librarian/__init__.py @@ -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() diff --git a/librarian/cover.py b/librarian/cover.py index a2de837..be34e26 100644 --- a/librarian/cover.py +++ b/librarian/cover.py @@ -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: