#python #python-3.x #discord #discord.py #discord.py-rewrite
#python #python-3.x #Discord #discord.py #discord.py-переписать
Вопрос:
Итак, я сделал reddit.py винтик, и похоже, что он будет работать отлично (по крайней мере, для меня), но нет, я получаю исключение при загрузке винтика: «Расширение ‘cogs.reddit’ выдало ошибку: TypeError: init() отсутствует 1 требуемый позиционный аргумент: ‘клиент'»
Теперь, вот мой код:
import discord, praw, random
from discord.ext import commands
reddit = praw.Reddit(client_id = '<id>', client_secret = '<secret>', username = '<username>', password = '<password>', user_agent = 'pythonpraw') # this is undoubtedly all correct
# There is an underscore in this class identifier because a "Reddit" class already exists within the "praw" package
class _Reddit(commands.Cog):
def __init__(self, client):
self.client = client
@commands.command()
async def meme(self, ctx):
subreddit = reddit.subreddit('memes')
top = subreddit.top(limit=50)
all_submissions = []
for submission in top:
all_submissions.append(submission)
random_submission = random.choice(all_submissions)
submission_name = random_submission.title
submission_url = random_submission.url
embed = discord.Embed(title=submission_name)
embed.set_image(url=submission_url)
await ctx.send(embed=embed)
def setup(client):
client.add_cog(_Reddit())
(Я использую discord.py переписать и Python 3.8.6)
Комментарии:
1. Пожалуйста, отправьте полную обратную трассировку исключения.
Ответ №1:
Проблема заключается в части настройки.
def setup(client):
client.add_cog(_Reddit(client))