import json, requests from .. import loader, utils def register(cb): cb(DictionaryMod()) class DictionaryMod(loader.Module): """Словарь.""" strings = {'name': 'Dictionary'} async def meancmd(self, message): """Использование: .mean <слово>.""" args = utils.get_args_raw(message) if not args: return await message.edit('Нет аргументов.') await message.edit('Узнаем...') lang = None alphabet = {"а","б","в","г","д","е","ё","ж","з","и","й","к","л","м","н","о", "п","р","с","т","у","ф","х","ц","ч","ш","щ","ъ","ы","ь","э","ю","я"} for char in args: if char in alphabet: lang = 'ru' else: lang = 'en' r = requests.get(f'https://api.dictionaryapi.dev/api/v2/entries/{lang}/{args}') js = json.loads(r.text) df = '' try: for i in js[0]["meanings"][0]["definitions"]: try: df += (f'{i["definition"]} ') except: return except: await message.edit(f'◆ {args} - Такого слова нет в словаре.') return ex = '' count = 0 mess = (f'{js[0]["word"]}, {js[0]["meanings"][0]["partOfSpeech"]}.\n\n' f'◆ Значение: {df}\n') try: for i in js[0]["meanings"][0]["definitions"]: count += 1 ex += f'\n{count}) {i["example"]}' alert = ''.join(ex) except: await message.edit(mess) return await message.edit(f'{mess}◆ Примеры применения слова: {alert}')