import discord from discord.ext import commands from utils.news import fetch_rss, format_articles, RSS_URL_ARTICLES, RSS_URL_POSTS class News(commands.Cog): """Команда !news — свежие статьи по AI с Habr""" @commands.command(name="news") async def news(self, ctx): """Топ-5 свежих статей по AI с Habr""" articles = await fetch_rss(RSS_URL_ARTICLES) if articles is None: await ctx.send("Не удалось получить новости. Попробуйте позже.") return if not articles: await ctx.send("Новостей пока нет.") return lines = format_articles(articles, "Лучшие статьи за сутки / Искусственный интеллект / Хабr", "https://habr.com/ru/hubs/artificial_intelligence/articles/top/daily/") posts = await fetch_rss(RSS_URL_POSTS) if posts: lines.append("") lines.extend(format_articles(posts, "Лучшие новости за сутки / Искусственный интеллект / Хабr", "https://habr.com/ru/hubs/artificial_intelligence/news/top/daily/")) message = "\n".join(lines).rstrip() await ctx.send(message, allowed_mentions=discord.AllowedMentions.none())