中文版本:《beempy 利用RC领取的新号资源创建steem 新号》
Although we are doing the steem-python practical training recently, but steem-python do not support using the pending claimed accounts collected by RC to create a new steem account, so we need to use beempy.
coding as the follow demo(create_account_with_RC.py):
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# python create_account_with_RC.py creator account
from contextlib import suppress
import sys
import json
# from beem import Steem
from beem.account import Account
from beem.instance import shared_steem_instance
from beemgraphenebase.account import BrainKey, PasswordKey
def 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()
Run it:python create_account_with_RC.py dappcoder newcoder
Results consistent with expectations:

Congratulations @dappcoder! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :
You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word
STOPDo not miss the last post from @steemitboard:
Vote for @Steemitboard as a witness to get one more award and increased upvotes!