def get_feed_thumbnail_url(self, feed, feed_response): """ Returns the thumbnail URL of the ``feed_response``, or ``None`` if no thumbnail can be found. By default, assumes that the response is a :mod:`feedparser` structur4e and returns a value based on that. """ try: return get_item_thumbnail_url(feed_response.feed) except KeyError: return None
def data_from_response(self, response): feed = response.feed data = { 'title': feed.get('title'), 'description': feed.get('subtitle'), 'webpage': feed.get('link'), 'guid': feed.get('id'), 'etag': response.get('etag'), } try: data['thumbnail_url'] = get_item_thumbnail_url(feed) except KeyError: pass # Should this be using response.modified? parsed = feed.get('updated_parsed') or feed.get('published_parsed') if parsed: data['last_modified'] = struct_time_to_datetime(parsed) # If there are more entries than page length, don't guess. if self.per_page is None or len(response.entries) < self.per_page: data['video_count'] = len(response.entries) return data