Расширение ‘cogs.reddit’ выдало ошибку: ошибка типа: __init__() отсутствует 1 требуемый позиционный аргумент: ‘client’, как мне это исправить?

#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))