# * _ __ __ _ _ # * / \ _ _ _ __ ___ _ __ __ _| \/ | ___ __| |_ _| | ___ ___ # * / _ \| | | | '__/ _ \| '__/ _` | |\/| |/ _ \ / _` | | | | |/ _ \/ __| # * / ___ \ |_| | | | (_) | | | (_| | | | | (_) | (_| | |_| | | __/\__ \ # * /_/ \_\__,_|_| \___/|_| \__,_|_| |_|\___/ \__,_|\__,_|_|\___||___/ # * # * © Copyright 2024 # * # * https://t.me/AuroraModules # * # * 🔒 Code is licensed under GNU AGPLv3 # * 🌐 https://www.gnu.org/licenses/agpl-3.0.html # * ⛔️ You CANNOT edit this file without direct permission from the author. # * ⛔️ You CANNOT distribute this file if you have modified it without the direct permission of the author. # Name: Wikipedia # Author: dend1yya # Commands: # .wikiru | wikien # scope: hikka_only # meta developer: @AuroraModules # meta pic: https://i.postimg.cc/Hx3Zm8rB/logo.png # meta banner: https://te.legra.ph/file/ee1bb476a643bb85b5723.jpg version = (1, 0, 0) import wikipedia # type: ignore from .. import loader, utils class WikipediaMod(loader.Module): """Search for information on Wikipedia""" strings = { "name": "Wikipedia", "EnterRequest": " Enter your search term on Wikipedia.", "SResult": "✔️ Wikipedia search result:", "IncorrectRequest": "🦋 Several possible options have been found. Specify your request:", "NotFound": " Nothing was found for your query.", "ErrorRequest": " An error occurred while executing the request:", } strings_ru = { "EnterRequest": " Введите свой поисковый запрос на Википедии.", "SResult": "✔️ Результат поиска на Википедии:", "IncorrectRequest": "🦋 Было найдено несколько возможных вариантов. Уточните ваш запрос:", "NotFound": " По вашему запросу ничего не найдено.", "ErrorRequest": " При выполнении запроса произошла ошибка:", } strings_uz = { "EnterRequest": " Vikipediya da qidirish so'zini kiriting.", "SResult": "✔️ Vikipediya qidiruv natijasi:", "IncorrectRequest": "🦋 Bir nechta mumkin variant topildi. So'rovingizni aniqlang:", "NotFound": " Sizning so'rovingiz uchun hech narsa topilmadi.", "ErrorRequest": " So'rovni bajarish jarayonida xatolik yuz berdi:", } strings_de = { "EnterRequest": " Geben Sie Ihren Suchbegriff auf Wikipedia ein.", "SResult": "✔️ Wikipedia-Suchergebnis:", "IncorrectRequest": "🦋 Mehrere mögliche Optionen wurden gefunden. Präzisieren Sie Ihre Anfrage:", "NotFound": " Für Ihre Anfrage wurde nichts gefunden.", "ErrorRequest": " Beim Ausführen der Anfrage ist ein Fehler aufgetreten:", } strings_es = { "EnterRequest": " Ingrese su término de búsqueda en Wikipedia.", "SResult": "✔️ Resultado de la búsqueda en Wikipedia:", "IncorrectRequest": "🦋 Se encontraron varias opciones posibles. Especifique su solicitud:", "NotFound": " No se encontró nada para su consulta.", "ErrorRequest": " Se produjo un error al ejecutar la solicitud:", } @loader.command( ru_doc="[prompt] - Поиск материала в Википедии на русском языке.", uz_doc="[prompt] - Vikipediyada materialni rus tilida qidiring.", de_doc="[prompt] - Material in der Wikipedia auf Russisch suchen.", es_doc="[prompt] - Buscar material en Wikipedia en ruso.", ) async def wikiru(self, message): """[prompt] - Search for material in Wikipedia in Russian.""" args = utils.get_args_raw(message) if not args: await utils.answer(message, self.strings['EnterRequest']) return try: wikipedia.set_lang("ru") _search_result = wikipedia.summary(args) await utils.answer(message, f"{self.strings_ru['SResult']}\n\n{_search_result}") except wikipedia.DisambiguationError as e: await utils.answer(message, f"{self.strings['IncorrectRequest']}\n{', '.join(e.options)}") except wikipedia.PageError: await utils.answer(message, self.strings['NotFound']) except Exception as e: await utils.answer(message, f"{self.strings['ErrorRequest']} {e}") @loader.command( ru_doc="[prompt] - Поиск материала в Википедии на английском языке.", uz_doc="[prompt] - Vikipediyada materialni ingliz tilida qidiring.", de_doc="[prompt] - Material in der Wikipedia auf Englisch suchen.", es_doc="[prompt] - Buscar material en Wikipedia en inglés.", ) async def wikien(self, message): """[prompt] - Search for material in Wikipedia in English.""" args = utils.get_args_raw(message) if not args: await utils.answer(message, self.strings['EnterRequest']) return try: wikipedia.set_lang("en") _search_result = wikipedia.summary(args) await utils.answer(message, f"{self.strings['SResult']}\n\n{_search_result}") except wikipedia.DisambiguationError as e: await utils.answer(message, f"{self.strings['IncorrectRequest']}\n{', '.join(e.options)}") except wikipedia.PageError: await utils.answer(message, self.strings['NotFound']) except Exception as e: await utils.answer(message, f"{self.strings['ErrorRequest']} {e}")