diff --git a/src/feather/client.py b/src/feather/client.py index 30867c1..80218ca 100644 --- a/src/feather/client.py +++ b/src/feather/client.py @@ -54,15 +54,21 @@ class GReaderSession(ClientSession): return l def get_articles_in_category(self, category: Category, limit: int = 1000, continuation: int = 0, unread_only: bool = False) -> list[GReaderArticle]: - items_ids = self.greader.get_stream_items_ids( - self.auth_token, - stream_id=category.id, - exclude_target="user/-/state/com.google/read" if unread_only else None, - limit=limit, - continuation=continuation, - ) - item_contents = self.greader.get_stream_items_contents(self.auth_token, self.csrf_token, item_ids=[item.id for item in items_ids.item_refs]) - return [ GReaderArticle(self, category, item_content) for item_content in item_contents.items ] + item_ids = [ + item.id + for item in self.greader.get_stream_items_ids( + self.auth_token, + stream_id=category.id, + exclude_target="user/-/state/com.google/read" if unread_only else None, + limit=limit, + continuation=continuation, + ).item_refs + ] + if len(item_ids) == 0: + return [] + else: + item_contents = self.greader.get_stream_items_contents(self.auth_token, self.csrf_token, item_ids=item_ids) + return [ GReaderArticle(self, category, item_content) for item_content in item_contents.items ] class GReaderArticle(Article): def __init__(self, session: GReaderSession, category: Category, item_content):