Як налаштувати реінвестування CBM та інших SteemEngine токенів за допомогою Python

Якщо на вашому аккаунті в Steem-Engine є деяка кількість CBM чи інших Steem-Engine токенів і вам набридло панькатись з ними вручну, то чому б вам не автоматизувати свої дії за допомогою скриптів на Python? Якщо ви досі цього не зробили, то мій пост саме для Вас! :)

Підготовка

  1. Заварюємо чашечку кави або відкриваємо пляшку гарного пива (так буде краще..повірте на слово.. :) )
  2. Перевіряємо чи встановлений python на тому компьютері чи сервері, де будуть працювати скрипти. Для цього відкриваємо термінал:
  • Linux: Ctrl-Alt-T, Ctrl-Alt-F2
  • Windows: Win+R > набираємо powershell > Enter/OK
  • MacOS: Finder > Applications > Utilities > Terminal
та набираємо там:
python --version для перевірки навності 2-ої версії чи
python3 --version - для 3-ої версії Python

Далі можливі 3 варінти:
а) комп видає щось на зразок:
n2fujt.png
значить все гаразд!
б) комп не розуміє якого біса вам від нього треба. Спокійно встановлюємо собі Python
в) закінчилась кава чи пиво. Повторюємо пунт 1.

Далі у вікні терміналу встановлюємо залежності
pip3 install beem steemengine -U

та налаштовуємо гаманець:

beempy createwallet beempy addkey

Створення скриптів

У мене їх два: перший для отримання токенів на свій баланс (автоматизація СLAIM), другий - для інвестування (автоматизація STAKE). Автором скриптів є @@@holger80, про які він написав ще півроку тому назад ось тут і ось там.

Просто за допомогою простого редактора (типу notepad) створюємо собі два файла, "claim_all_tokens.py" та "stake_my_tokens.py" з таким змістом:

claim_all_tokens.py

from beem import Steem from beem.nodelist import NodeList import json import requests if name == "main": username = "ВАШ_АККАУНТ" wif = "АКТИВНИЙ_КЛЮЧ" url = "http://scot-api.steem-engine.com/@" + username r = requests.get(url) result = r.json() json_data = [] for token in result: scot = result[token] if int(scot["pending_token"]) > 0: json_data.append({"symbol": token}) print("%s can be claimed" % (token)) if len(json_data) > 0: nodes = NodeList() nodes.update_nodes() stm = Steem(nodes.get_nodes()) stm = Steem(node=nodes.get_nodes(), keys=[wif]) stm.custom_json("scot_claim_token", json_data, required_posting_auths=[username]) else: print("Nothing to claim") stake_my_tokens.py from beem import Steem from beem.nodelist import NodeList from steemengine.wallet import Wallet import json if name == "main": scot_token = ["CBM","DBLOG", "NEOXAG", "LEO", "UFM", "BUILD", "GG", "PAL", "INT", "ASS", "STEEMSPEAK", "GEEK", "BEER", "BATTLE", "MEME", "TRDO", "SAND", "VITP"] username = "ВАШ_АККАУНТ" # Set either the active wif or the wallet password wif = "ВАШ_КЛЮЧ" wallet_password = None wallet = Wallet(username) stake_token = {} for scot in scot_token: data = wallet.get_token(scot) if data is not None and data["balance"] is not None: balance = float(wallet.get_token(scot)["balance"]) if balance > 0: stake_token[scot] = balance if len(stake_token) > 0: print("Will stake the following token %s" % str(stake_token)) nodes = NodeList() nodes.update_nodes() stm = Steem(nodes.get_nodes()) #pwd = getpass.getpass("Enter Walletpassword or posting key for %s" % username) if wallet_password is not None: stm.unlock(wallet_password) else: stm = Steem(node=nodes.get_nodes(), keys=[wif]) json_data = [] for token in stake_token: contract_payload = {"symbol":token.upper(),"quantity":str(stake_token[token]), "to":username} json_data.append({"contractName":"tokens","contractAction":"stake", "contractPayload":contract_payload}) # print(json_data) tx = stm.custom_json("ssc-mainnet1", json_data, required_auths=[username]) print(tx) else: print("Nothing to stake") В самих файлах потрібно потім вставити назву свого Steemit аккаунта , активний ключ, та свій набір токенів для стейкінгу. Перевірити скрипти можна в терміналі за домогою команд: python3 claim_all_tokens.py та python3 stake_my_tokens.py Автоматизація запуску Якщо у вас Linux або MacOS, в терміналі набираємо команду crontab -e та виставляємо там проміжок часу який вам більше для вподоби. У мене прописано так: 30 */6 * * * python3 /home/projects/crypto-bots/steem-engine/stake_my_tokens.py 0 */6 * * * python3 /home/projects/crypto-bots/steem-engine/claim_all_tokens.py Тобто, скрипти запускаються 4 рази на добу з інтервалом півгодини між собою. Користувачам Windows знадобиться заварити собі ще одну чашку кафи чи відкрити ще одну пляшку пива, оскільки в цій операційній системі все не так просто... Потрібно буде налаштувати Task Scheduler. Ось невеличке відео, яке й знайшов в неті на цю тему:

Всім власникам токенів CBM, раджу також в steemauto.com налаштувати curation trail на @cryptobrewmaster От і все! Сам я тільки почав вивчати Python і цілком можливо що поточний метод можливо поліпшити. Буду вдячний за будь-які коментарі на цю тему. Гарного Вам настрою!

Sort:  
UpvoteBank
Your upvote bank
__2.jpgThis post have been upvoted by the @UpvoteBank service. Want to know more and receive "free" upvotes click here

Thanks for using eSteem!
Your post has been voted as a part of eSteem encouragement program. Keep up the good work!
Dear reader, Install Android, iOS Mobile app or Windows, Mac, Linux Surfer app, if you haven't already!
Learn more: https://esteem.app
Join our discord: https://discord.me/esteem

Nice one! Have a beer my friend

!BEER

Posted using Partiko iOS


Hey @stranger27, here is a little bit of BEER from @cryptobrewmaster for you. Enjoy it!

Learn how to earn FREE BEER each day by staking.

Корисний допис, зберіг собі в закладки. Може колись згодиться ))