From 9d27438c12305d70db7c5d33c2b6e739a49685a4 Mon Sep 17 00:00:00 2001 From: crokkon <33018033+crokkon@users.noreply.github.com> Date: Thu, 22 Aug 2019 22:31:44 +0200 Subject: [PATCH] discussions.py: handle different node formats --- beem/comment.py | 4 +++- beem/discussions.py | 13 ++++++++++--- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/beem/comment.py b/beem/comment.py index 1300d5ab..dbd21b08 100644 --- a/beem/comment.py +++ b/beem/comment.py @@ -588,7 +588,9 @@ class Comment(BlockchainObject): return None self.steem.rpc.set_next_node_on_empty_reply(False) if self.steem.rpc.get_use_appbase(): - content_replies = self.steem.rpc.get_content_replies({'author': post_author, 'permlink': post_permlink}, api="tags")['discussions'] + content_replies = self.steem.rpc.get_content_replies({'author': post_author, 'permlink': post_permlink}, api="tags") + if 'discussions' in content_replies: + content_replies = content_replies['discussions'] else: content_replies = self.steem.rpc.get_content_replies(post_author, post_permlink, api="tags") if raw_data: diff --git a/beem/discussions.py b/beem/discussions.py index 1aa1f192..e6614235 100644 --- a/beem/discussions.py +++ b/beem/discussions.py @@ -546,7 +546,9 @@ class Discussions_by_blog(list): self.steem = steem_instance or shared_steem_instance() self.steem.rpc.set_next_node_on_empty_reply(self.steem.rpc.get_use_appbase()) if self.steem.rpc.get_use_appbase(): - posts = self.steem.rpc.get_discussions_by_blog(discussion_query, api="tags")['discussions'] + posts = self.steem.rpc.get_discussions_by_blog(discussion_query, api="tags") + if 'discussions' in posts: + posts = posts['discussions'] # inconsistent format across node types else: # limit = discussion_query["limit"] # account = discussion_query["tag"] @@ -580,7 +582,9 @@ class Discussions_by_comments(list): self.steem = steem_instance or shared_steem_instance() self.steem.rpc.set_next_node_on_empty_reply(self.steem.rpc.get_use_appbase()) if self.steem.rpc.get_use_appbase(): - posts = self.steem.rpc.get_discussions_by_comments(discussion_query, api="tags")['discussions'] + posts = self.steem.rpc.get_discussions_by_comments(discussion_query, api="tags") + if 'discussions' in posts: + posts = posts['discussions'] # inconsistent format across node types else: posts = self.steem.rpc.get_discussions_by_comments(discussion_query) super(Discussions_by_comments, self).__init__( @@ -640,9 +644,12 @@ class Replies_by_last_update(list): self.steem = steem_instance or shared_steem_instance() self.steem.rpc.set_next_node_on_empty_reply(self.steem.rpc.get_use_appbase()) if self.steem.rpc.get_use_appbase(): - posts = self.steem.rpc.get_replies_by_last_update(discussion_query, api="tags")['discussions'] + posts = self.steem.rpc.get_replies_by_last_update(discussion_query, api="tags") + if 'discussions' in posts: + posts = posts['discussions'] else: posts = self.steem.rpc.get_replies_by_last_update(discussion_query["start_parent_author"], discussion_query["start_permlink"], discussion_query["limit"]) + super(Replies_by_last_update, self).__init__( [ Comment(x, lazy=lazy, steem_instance=self.steem) -- GitLab