파이썬 beem에서 증인 계정 정보 조회
- Get link
- X
- Other Apps
by joviansummer
original STEEMIT post: https://steemit.com/blog/@joviansummer/a119b8-beem
파이썬 beem에서 증인(witness) 계정 정보를 확인할 수 있습니다. beem.witness 모듈에서 제공하는 Witness 객체를 이용하면 됩니다. 증인 계정 @jswit의 정보를 확인하는 예시는 아래와 같습니다.
from beem.steem import Steem
from beem.witness import Witness
steem_nodes = ["https://api.steemit.com"]
steem = Steem(node=steem_nodes)
witness_account = 'jswit'
witness = Witness(witness_account, blockchain_instance=steem)
우선 증인 계정이 활성화되어 있는지 확인하려면 is_active라는 객체 변수를 이용합니다.
if witness.is_active == True:
print(witness_id, "계정이 활성화되어 있습니다.")
else:
print(witness_id, "계정이 비활성화되어 있습니다.")
증인 계정에 대한 다양한 정보는 json() 함수를 이용해서 딕셔너리(dict) 형식으로 가져와 활용할 수 있습니다.
witness_dict = witness.json()
print(witness_dict)
{'id': 14958, 'owner': 'jswit', 'created': '2021-09-11T03:20:15', 'url': 'https://steemit.com/@jswit', 'votes': '73651620591447340', 'virtual_last_update': '798885832300903482288594292', 'virtual_position': '325085507411969472958283840007549628802', 'virtual_scheduled_time': '798886038635256846587788944', 'total_missed': 92, 'last_aslot': 68251340, 'last_confirmed_block_num': 67824389, 'pow_worker': 0, 'signing_key': 'STM6j5fn8jrWRH8J8ST4ps5yMkbC3JSQV5zWzKDa8W3RsSxi9WEem', 'props': {'account_creation_fee': {'amount': '3000', 'precision': 3, 'nai': '@@000000021'}, 'maximum_block_size': 65536, 'sbd_interest_rate': 0, 'account_subsidy_budget': 797, 'account_subsidy_decay': 347321}, 'sbd_exchange_rate': {'base': {'amount': '207', 'precision': 3, 'nai': '@@000000013'}, 'quote': {'amount': '1000', 'precision': 3, 'nai': '@@000000021'}}, 'last_sbd_exchange_update': '2022-09-19T12:02:15', 'last_work': '0000000000000000000000000000000000000000000000000000000000000000', 'running_version': '0.23.1', 'hardfork_version_vote': '0.0.0', 'hardfork_time_vote': '2016-03-24T16:00:00', 'available_witness_account_subsidies': 0}
예를 들어 현재 누락된 블럭의 개수는 'total_missed' 키(key)에, 증인 노드 버전은 'running_version' 키에 있는 것을 확인할 수 있습니다. 획득한 증인투표는 'votes' 키(key)에 있는데 스팀파워가 아니라 VESTS 값에 1백만을 곱한 값입니다. 위의 경우 "73651620591447340"이라고 되어 있는데 이는 73651620591.447340VESTS이고 MVESTS로 표시하면 73651.620591447340MVESTS가 됩니다.
참고로 feed_publish() 함수를 이용해서 스팀 가격을 공시할 수도 있는데, 이전에 포스팅한 내용을 참고하시기 바랍니다. 아래의 링크입니다.
@joviansummer의 스팀 프로젝트
스팀 증인노드를 운영중입니다. @jswit에 증인투표해 주시면 감사하겠습니다.
(https://steemitwallet.com/~witnesses)
jsup 서비스에 큐레이션 보상 분배 기능이 추가되었습니다.
jSTEEM 프로젝트 - 텔레그램 챗봇으로 구현하는 스팀 블럭체인 탐색기
Posted through the AVLE Dapp (https://avle.io)
- Get link
- X
- Other Apps
Comments
Post a Comment