From a1f6296731918c3d7d316001804b5a82268fc893 Mon Sep 17 00:00:00 2001 From: pito Date: Sun, 26 Oct 2025 14:37:30 +0100 Subject: [PATCH] Eliminar main.py --- main.py | 104 -------------------------------------------------------- 1 file changed, 104 deletions(-) delete mode 100644 main.py diff --git a/main.py b/main.py deleted file mode 100644 index d23ea6e..0000000 --- a/main.py +++ /dev/null @@ -1,104 +0,0 @@ -import requests -import discord -from discord.ext import commands -from discord.ext import tasks -import secrets -import time -import xmltodict - -intents = discord.Intents.all() -allowed_mentions = discord.AllowedMentions(everyone = True) - -bot = commands.Bot(command_prefix="$", intents=intents, allowed_mentions=allowed_mentions) - -url = "https://www.infodefensa.com/sitemap/lastarticles" -r = requests.get(url) -xml = xmltodict.parse(r.text) -ultimaurl = xml['urlset']['url'][0]['loc'] #Guarda la última url del xml -#viejoxml = xml['urlset']['url'][0]['loc'] #Guarda la primera url del xml al encender el bot - - -@bot.event -async def on_ready(): - print(f"Bot vivo! \nUsuario: {bot.user}") - await bot.user.edit(username="Pregonero") - await bot.change_presence( - status=discord.Status.online, - activity=discord.Activity( - type=discord.ActivityType.playing, - name="Pregoneando")) - await send_log(f"hora de inicio: {time.ctime(time.time())}") - mandar_noticia.start() - - -async def send_log(msg): #Mandar log - channel = bot.get_channel(secrets.IDcanalLogs) #Canal al que se envía el log - await channel.send(msg) - - -@tasks.loop(minutes = 5) #Mandar noticias -async def mandar_noticia(): - global ultimaurl - - try: - channel = bot.get_channel(secrets.IDcanalNoticias) #Canal al que se envía el mensaje - - r = requests.get(url) - xml = xmltodict.parse(r.text) - urls = [u['loc'] for u in xml['urlset']['url']] #Lista de todas las URL - - nuevas = [] - for loc in urls: - if loc == ultimaurl: - break - nuevas.append(loc) - - if nuevas: #Si el array no está vacío - await channel.send(f"Atención <@&{secrets.IDrol}> hay nuevas noticias:") #Luego hay que cambiar el rol - for loc in reversed(nuevas): #Recorre el array hacia atrás para mandarlas en orden. - await channel.send(f"\n{loc}") - ultimaurl = urls[0] #Actualizamos la url vieja - except Exception as e: - await send_log(f"Error: ```{e}```") - - -@bot.command() -async def noticias(ctx): - rol = ctx.guild.get_role(secrets.IDrol) - user = ctx.author - - if rol in user.roles: - await user.remove_roles(rol) - await ctx.send(f"Entendido {user.mention}, ya no recibirás las noticias", delete_after=10) - else: - await user.add_roles(rol) - await ctx.send(f"Entendido {user.mention}, ahora recibirás las noticias", delete_after=10) - - - - - - -#@tasks.loop(minutes = 5) #Mandar noticias -#async def mandar_noticia(): -# global viejoxml - -# try: -# channel = bot.get_channel(secrets.IDcanalNoticias) #Canal al que se envía el mensaje - -# r = requests.get(url) -# xml = xmltodict.parse(r.text) -# nuevoxml = xml['urlset']['url'][0]['loc'] #Guarda la primera url del xml -# if nuevoxml != viejoxml: #Compara las url -# await channel.send(f"Atención <@&{secrets.IDrol}> hay una nueva noticia:\n{xml['urlset']['url'][0]['loc']}") #Luego hay que cambiar el rol -# viejoxml = nuevoxml #Actualizamos la url vieja -# except Exception as e: -# await send_log(f"Error: ```{e}```") - - - - - - -if __name__ == '__main__': - bot.run(secrets.TOKEN) \ No newline at end of file