Last active
December 27, 2021 12:50
-
-
Save inbalboa/3ce95f3f0f1ae0fb4ea730ea0bacecbb to your computer and use it in GitHub Desktop.
Monobank.ua plugin for https://getbitbar.com/. Needs https://pypi.org/project/monobankua/
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env -S PATH="/usr/local/bin:${PATH}" python3 | |
from datetime import datetime, timedelta | |
from monobankua import Monobank | |
from operator import attrgetter | |
TOKEN = 'xxx' | |
def icon(): | |
return 'iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAADJ0lEQVR4AWKgKRgF3t7eJgkJCfZEKS4rKzP08PDIT01NtSZGfX19vYixsfElLS2tPdbW1qYENQgICMy0sbHZx8LC8t/Ozu6miopKLD71gPaqIcDNMArW1uJP1nactW0Ga9u2bZ9q+1LbtnmveandTrAOimvDz/PezLzvt7Ky6qfT6THIQhtrL3/8+HGyTIDg4OAuV1dXX3d39yRsvhkYGLiMQqFcdnR0dBq/dvXq1QSivzrU9/PzGyAIIlomgK2tbSgOqxG0AwIC3Nhs9lH8G1Op1O0WFhZrORxOUmho6CCml7q4uJy0tLTcW15eLqQzJSWFYLFY52UCVFRU6GPR7qF+RkaGn5aWVpWXl9cta2vrvXp6ekUQ1HvKlCnmiNjOzc0tw8bGZjW+92NjY9uhwy4AOcgEcXZ2vjvU1tbWJnJzc/MiIiLmj17T0dGhBd61hvqbN2+eBnOkmpqavga9y2QCaGpqLsnOzhamraampow/Jr4sLpdrOrQG81Q7O7vjyKIfOgj18fX1NQNdRaD5LcApUgGwKZRiRqkXtJGyBaJ6BSrWwl270P8A0XdHRkbGAOBWWlpaBrQ5p6ur+5TBYOzB/EMcHiUwxs+fPyU7Cova8Bc11Ae/HXBTLCiwMzIyutTW1kaF+G8h9qpjx45FgdLHJiYmWxFEH/Z2CfYYGxv3gdYQad6+fPz48blD/ZCQEGVEexsAFXDYAOYvzZgxI62woJBpaGj4GuNLAXAZrtqI5XMEe1AbTqBuQCIANu0TWG70GKhQBEgKnJRWXFysPTQOKq5LOkNBQcGCTCYvlQgA59TAinHyqh41wYI+35hMJjF+jsfjVUH0VIkbGxoayLiLPEtLS+fKqHhVGo1239PTMxcH9Yye6+3t1USmt4esLfEFYWMh2Jna2lqSpPmcnJx5RUVF1PHja9euVUVGx9CUWWxDYnvCIXcgWGloWKiivPXQKQg63YEBHH/7rm9paZmL+yYL3r5GIpEOwjH9CxcuTIOzklB4sSjKNPi/E465jGBWg1b1v36wgBLlmJgYLzTTwH82LsAcQRuG8N25c6fC/0fvP71+AVDd+A96CWoiAAAAAElFTkSuQmCC' | |
def main(): | |
monobank = Monobank(TOKEN) | |
try: | |
client_name, webhook_url, accounts = monobank.client_info() | |
except Exception as e: | |
print(f'!|templateImage={icon()}') | |
print('---') | |
print(e) | |
return | |
print(f'{accounts[0]}|templateImage={icon()}') | |
print('---') | |
print(f'{client_name}|refresh=false') | |
print('---') | |
for account in accounts: | |
print(account.card) | |
print(f'Баланс: {account.balance / 100} {account.currency.symbol}|refresh=false') | |
if account.creditLimit: | |
print(f'Кредитний ліміт: {account.creditLimit // 100}|refresh=false size=10') | |
try: | |
statements = monobank.statements(account.id, (datetime.now() - timedelta(days=2)).date()) | |
except Exception as e: | |
print(e) | |
return | |
if statements: | |
print('Виписка за 3 дні') | |
for statement in sorted(statements, key=attrgetter('time'), reverse=True): | |
print(f'--{statement}|refresh=false') | |
print('---') | |
print('Оновити|refresh=true') | |
if __name__ == '__main__': | |
main() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment