Published: 22 Nov 2018 › Updated: 22 Nov 2018

decrypt memos from an account and store them in a csv file
#!/usr/bin/python
from beem import Steem
from beem.memo import Memo
from beem.account import Account
from beem.amount import Amount
import getpass
import six
import csv
if __name__ == "__main__":
if six.PY3:
account = input("Enter account name: ")
else:
account = raw_input("Enter account name: ")
memo_wif = getpass.getpass(prompt='Enter the memo key of %s:' % account)
stm = Steem(keys=[memo_wif])
acc = Account(account, steem_instance=stm)
with open('encrypted_memos.csv', mode='w') as csv_file:
fieldnames = ['timestamp', 'from', 'to', 'amount', 'decrypted_memo']
writer = csv.DictWriter(csv_file, fieldnames=fieldnames)
writer.writeheader()
for h in acc.history_reverse(only_ops=["transfer"]):
if len(h["memo"]) < 2:
continue
if h["memo"][0] != '#':
continue
memo = Memo(from_account=h["from"], to_account=h["to"], steem_instance=stm)
try:
decrypted_memo = memo.decrypt(h["memo"])
except:
decrypted_memo = "decryption failed."
amount = Amount(h["amount"], steem_instance=stm)
print("%s - from: %s, to: %s, amount: %s, decr. text: %s" % (h["timestamp"], h["from"], h["to"], str(amount), decrypted_memo))
writer.writerow({"timestamp": h["timestamp"], "from": h["from"], "to": h["to"], "amount": str(amount), "decrypted_memo": decrypted_memo})
Leave decrypt memos from an account and store them in a csv file to:
Read more #python, posts
Best Posts From beempy
We have not curated any of beempy's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.