WikipeBot/wikibot.py
2025-01-07 00:37:38 +01:00

67 lines
2.8 KiB
Python

import discord, wikipedia
from discord import Option
#from private.config import token
#import os
#os.chdir("/opt/disbot")
bot = discord.Bot()
g_ids = [1261698917163077632]
@bot.event
async def on_ready():
print(f"We've logged in as {bot.user}.")
@bot.slash_command(guild_ids=g_ids, name = "summary", description="Returns a Wikipedia summary")
async def summary(ctx, search: Option(str, description="What do you want to get summary for?", required = True)):
await ctx.channel.trigger_typing() # shows that bot is typing
try: # sezene sumar a odesle
thesummary = wikipedia.summary(search, chars = 1950)
try:
await ctx.respond(thesummary) # Respons je limitovano 3 vterinami, lepsi ale obcas nestihne
except:
await ctx.send(thesummary) # Send horsi, pouzije pokud nestihne response
except: # pokud nesezena musi vyhledavat
searchsummary = str(wikipedia.search(search, suggestion = True)).replace('(', '').replace(")", "").replace("'", "").replace('[', '').replace(']', '')
try:
await ctx.respond(f"I can't seem to find a summary for that.. DId you mean: {searchsummary}")
except:
await ctx.send(f"I can't seem to find a summary for that.. DId you mean: {searchsummary}")
@bot.slash_command(guild_ids=g_ids, name = "search", description="Search Wikipedia")
async def search(ctx, search: Option(str, description = "What do you want to search for?", required = True)):
await ctx.channel.trigger_typing() # shows that bot is typing
searchsearch = str(wikipedia.search(search, suggestion = True)).replace('(', '').replace(")", "").replace("'", "").replace('[', '').replace(']', '')
try:
await ctx.respond(searchsearch)
except:
await ctx.send(searchsearch)
@bot.slash_command(guild_ids=g_ids, name = "url", description="Get a URL to a page on Wikipedia")
async def search(ctx, search: Option(str, description = "What do you want to get URL for?", required = True)):
await ctx.channel.trigger_typing() # shows that bot is typing
try: # pokud sezenu sumary tak sezenu link
urlsummary = wikipedia.summary(search, auto_suggest = False)
search = search.lower().replace(" ","_").replace(" ","_")
try:
await ctx.respond(f"https://en.wikipedia.org/wiki/{search}")
except:
await ctx.send(f"https://en.wikipedia.org/wiki/{search}")
except:
urlsearch = str(wikipedia.search(search, suggestion = True)).replace('(', '').replace(")", "").replace("'", "").replace('[', '').replace(']', '')
try:
await ctx.respond(f"https://en.wikipedia.org/wiki/{urlsearch}")
except:
await ctx.send(f"https://en.wikipedia.org/wiki/{urlsearch}")
bot.run("MTMyNTk1Mzg4OTcyNzQxNDM0Mw.G2Tgo0.2OhbgaVYhys0BhxJMVgGDnG0W5qvxH-soJML3M")