Fix #1801 (Error when fetching cover.)

This commit is contained in:
Kovid Goyal 2009-02-08 16:54:19 -08:00
parent 526bdc6049
commit 2a474382d0

View File

@ -38,8 +38,13 @@ def cover_from_isbn(isbn, timeout=5.):
browser = _browser()
_timeout = socket.getdefaulttimeout()
socket.setdefaulttimeout(timeout)
src = None
try:
src = browser.open('http://www.librarything.com/isbn/'+isbn).read().decode('utf-8', 'replace')
except Exception, err:
if isinstance(getattr(err, 'args', [None])[0], socket.timeout):
raise LibraryThingError(_('LibraryThing.com timed out. Try again later.'))
raise
s = BeautifulSoup(src)
url = s.find('td', attrs={'class':'left'})
if url is None: