diff --git a/modules/tumblr/browser.py b/modules/tumblr/browser.py index c1a4a3fcdcd243dfa1a85334c439300817150564..48f1d4a34303aca6e27a33846a12a386c7e3d5e7 100644 --- a/modules/tumblr/browser.py +++ b/modules/tumblr/browser.py @@ -40,9 +40,12 @@ def request(self, *args, **kwargs): r = re.sub(r'^var tumblr_api_read = (.*);$', r'\1', r) return json.loads(r) - def get_title(self): + def get_title_icon(self): r = self.request('/api/read/json?type=photo&num=1&start=0&filter=text') - return r['tumblelog']['title'] + icon = None + if r['posts']: + icon = r['posts'][0]['tumblelog']['avatar_url_512'] + return (r['tumblelog']['title'], icon) def iter_images(self, gallery): index = 0 diff --git a/modules/tumblr/module.py b/modules/tumblr/module.py index a41e1a7923c8495238bdbba869cd9fdf9f321c14..4abeb5f7c9bda20e96df8c5ee059904de08ff54f 100644 --- a/modules/tumblr/module.py +++ b/modules/tumblr/module.py @@ -21,7 +21,7 @@ from weboob.browser.exceptions import ClientError, HTTPNotFound -from weboob.capabilities.gallery import CapGallery, BaseGallery, BaseImage +from weboob.capabilities.gallery import CapGallery, BaseGallery, BaseImage, Thumbnail from weboob.tools.backend import Module, BackendConfig from weboob.tools.compat import urlparse from weboob.tools.value import Value @@ -50,7 +50,10 @@ def url(self): return self.config['url'].get() def get_gallery(self, _id): - return BaseGallery(_id, title=self.browser.get_title(), url=self.url()) + title, icon = self.browser.get_title_icon() + if icon: + icon = Thumbnail(icon) + return BaseGallery(_id, title=title, url=self.url(), thumbnail=icon) def search_galleries(self, pattern, sortby=CapGallery.SEARCH_RELEVANCE): pattern = pattern.lower() @@ -73,4 +76,5 @@ def fill_img(self, img, fields): OBJECTS = { BaseImage: fill_img, + BaseGallery: fill_img, }