Using Lightsteem to query Hivemind

I use Lightsteem to test and query Hivemind endpoints. Structure-wise, Hive's RPC server part is compatible with the steemd RPC nodes. So, it's a simple configuration touch.

condenser_api

Example to get followers of an account:

from lightsteem.client import Client

c = Client(nodes=["https://hivemind.emrebeyler.me"])
followers = c.get_followers("emrebeyler", "", "blog", 10)
print(followers)

You can find the list of methods here.

hive_api

  • Example to get the database head state
from lightsteem.client import Client

c = Client(nodes=["https://hivemind.emrebeyler.me"])
head_state = c('hive').db_head_state()
print(head_state)

Output:

{'db_head_block': 29371204,
 'db_head_time': '2019-01-11 20:15:51',
 'db_head_age': 10}

  • Auto-complete endpoint
from lightsteem.client import Client

c = Client(nodes=["https://hivemind.emrebeyler.me"])

# search for accounts starting with dpoll, 
# from emrebeyler's perspective.

accounts = c('hive').get_accounts_ac(["dpoll", "emrebeyler"])

print(accounts)

Output:

{'friend': [{'name': 'dpoll.curation',
   'vote_sp': 24280,
   'joined_at': '2018-11-04 09:21:42',
   'reputation': 54.57,
   'context': {'is_following': True}},
  {'name': 'dpoll.sponsors',
   'vote_sp': 0,
   'joined_at': '2018-11-13 06:41:12',
   'reputation': 25.0,
   'context': {'is_following': True}}],
 'global': [{'name': 'dpolly0',
   'vote_sp': 0,
   'joined_at': '2016-08-07 10:01:54',
   'reputation': 25.0},
  {'name': 'dpolls.app',
   'vote_sp': 0,
   'joined_at': '2018-08-27 08:05:54',
   'reputation': 25.0},
  {'name': 'dpoll.xyz',
   'vote_sp': 0,
   'joined_at': '2018-09-21 10:32:06',
   'reputation': 25.0},
  {'name': 'dpoll.test',
   'vote_sp': 0,
   'joined_at': '2018-11-23 20:53:15',
   'reputation': 25.0},
  {'name': 'dpoll.funds',
   'vote_sp': 0,
   'joined_at': '2018-11-19 06:58:42',
   'reputation': 25.0},
  {'name': 'dpoll.economy',
   'vote_sp': 0,
   'joined_at': '2018-05-05 14:55:45',
   'reputation': 25.0},
  {'name': 'dpoll.app',
   'vote_sp': 0,
   'joined_at': '2018-04-23 14:19:00',
   'reputation': 25.0},
  {'name': 'dpoll-xyz',
   'vote_sp': 0,
   'joined_at': '2018-11-16 08:50:45',
   'reputation': 25.0},
  {'name': 'dpoll',
   'vote_sp': 0,
   'joined_at': '2018-03-13 13:23:57',
   'reputation': 25.0}]}

  • get_accounts
from lightsteem.client import Client

c = Client(nodes=["https://hivemind.emrebeyler.me"])

# retrieve basic data of the passed accounts
accounts = c('hive').get_accounts([["foo", "bar"]])

print(accounts)

Output:

[{'name': 'foo',
  'vote_sp': 0,
  'joined_at': '2016-04-05 09:18:45',
  'reputation': 25.0},
 {'name': 'bar',
  'vote_sp': 0,
  'joined_at': '2016-05-01 14:59:12',
  'reputation': 25.0}]

For the Beem fans, it's also possible with Beem's internal GrapheneRPC client.

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center