from .. import loader, utils
import requests
@loader.tds
class CurrencyMod(loader.Module):
"""Get current currency exchange rates"""
strings = {
"name": "K:Currency",
"usage": "❌ Usage: .rate USD EUR.",
"error": "‼️ Error getting exchange rate.",
"searching": "🔎 Searching for exchange rate...",
"result": "💼 1 {} = {} {}"
}
strings_ru = {
"name": "K:Currency",
"usage": "❌ Использование: .rate USD EUR.",
"error": "‼️ Ошибка получения курса валют.",
"searching": "🔎 Ищу курс валют...",
"result": "💼 1 {} = {} {}"
}
@loader.command()
async def rate(self, message):
""" - Get exchange rate"""
args = utils.get_args_raw(message)
if not args or len(args.split()) != 2:
await utils.answer(message, self.strings["usage"])
return
base, target = args.upper().split()
await utils.answer(message, self.strings["searching"])
try:
response = requests.get(f"https://open.er-api.com/v6/latest/{base}")
data = response.json()
rate = data["rates"][target]
await utils.answer(message, self.strings["result"].format(base, rate, target))
except Exception:
await utils.answer(message, self.strings["error"])