我想从一个删减员那里得到模因。问题是,当我尝试使用subreddit('memes')方法获取模因时,该方法返回一个不可迭代的‘ListingGenerator’对象。
我想知道是否有任何方法将其转换为一个可迭代对象或任何其他方法来使用ASYNCPRAW从reddit获取模因。
以下是功能:
async def meme(self, ctx):
subreddit = await reddit.subreddit('memes')
print(type(subreddit))
all_subs = []
print(subreddit.hot(limit=50))
for submission in subreddit.hot(limit=50):
all_subs.append(submission)
random_sub = random.choice(all_subs)
name = random_sub.title
url = random_sub.url
embed = discord.Embed(title=name)
embed.set_image(url=url)
await ctx.send(embed=embed)这是我得到的错误:
Traceback (most recent call last):
File "C:\Users\ansel\AppData\Local\Programs\Python\Python38\lib\site-packages\discord\ext\commands\core.py", line 85, in wrapped
ret = await coro(*args, **kwargs)
File "C:\Users\ansel\PycharmProjects\Transfer News\cogs\meme.py", line 48, in meme
for submission in subreddit.hot(limit=50):
TypeError: 'ListingGenerator' object is not iterable
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\ansel\AppData\Local\Programs\Python\Python38\lib\site-packages\discord\ext\commands\bot.py", line 902, in invoke
await ctx.command.invoke(ctx)
File "C:\Users\ansel\AppData\Local\Programs\Python\Python38\lib\site-packages\discord\ext\commands\core.py", line 864, in invoke
await injected(*ctx.args, **ctx.kwargs)
File "C:\Users\ansel\AppData\Local\Programs\Python\Python38\lib\site-packages\discord\ext\commands\core.py", line 94, in wrapped
raise CommandInvokeError(exc) from exc
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: TypeError: 'ListingGenerator' object is not iterablehttps://stackoverflow.com/questions/66161657
复制相似问题