beempy 利用RC领取的新号资源创建steem 新号
最近虽然在做steem-python 实战教程,但不支持利用RC领取的新号资源创建steem 新号,需要使用beempy.
代码如下(create_account_with_RC.py):
#!/usr/bin/python# -*- coding: UTF-8 -*-# python create_account_with_RC.py creator accountfrom contextlib import suppressimport sysimport json# from beem import Steemfrom beem.account import Accountfrom beem.instance import shared_steem_instancefrom beemgraphenebase.account import BrainKey, PasswordKeydef run(): # need creator and name of the new account try: creator = sys.argv[1] account = sys.argv[2] except Exception as e: sys.exit() print('creator:', creator) print('account:', account) # gen a set of keys bk = BrainKey() brainkey = bk.get_brainkey() print('brain key:', str(brainkey)) prikey = str(bk.get_private()) print('private key:', str(prikey)) pubkey = format(bk.get_public(), "STM") print('public key:', str(pubkey)) # unlock local wallet stm = shared_steem_instance() stm.wallet.unlock(password) try: # Account of creator creatorA = Account(creator, steem_instance=stm) # test the new account is exist on steem blockchain? accountA = Account(account, steem_instance=stm) except Exception as e: print('account can be created:', account) # create new account tx = stm.create_claimed_account(account, creator=creatorA, password=pubkey) print('create_claimed_account:', json.dumps(tx, indent=4)) # get keys posting_key = PasswordKey(account, pubkey, role="posting", prefix=stm.prefix) active_key = PasswordKey(account, pubkey, role="active", prefix=stm.prefix) memo_key = PasswordKey(account, pubkey, role="memo", prefix=stm.prefix) owner_key = PasswordKey(account, pubkey, role="owner", prefix=stm.prefix) # get publick keys # active_pubkey = active_key.get_public_key() # owner_pubkey = owner_key.get_public_key() # posting_pubkey = posting_key.get_public_key() memo_pubkey = memo_key.get_public_key() # get private keys active_privkey = active_key.get_private_key() posting_privkey = posting_key.get_private_key() owner_privkey = owner_key.get_private_key() memo_privkey = memo_key.get_private_key() print('posting_privkey:', str(posting_privkey)) print('active_privkey:', str(active_privkey)) print('owner_privkey:', str(owner_privkey)) print('memo_privkey:', str(memo_privkey))if __name__ == '__main__': with suppress(KeyboardInterrupt): run()
执行程序:python create_account_with_RC.py dappcoder newcoder
执行结果符合预期: