discord.py Spotify 似乎什么也没做
discord.py Spotify doesnt seem to do anything
我正在开发我的第一个 bot 只是作为一种爱好和一些帮助我学习的东西 Python 我一直在尝试将 Spotify 与它集成,但它似乎不起作用。我还阅读了本网站上的其他 post,但没有帮助。
我已尝试通读文档,但我是初学者,无法在 google 上找到太多帮助。
如果我打印(discord.Spotify.title),我会在 0x0000020E42C5DE00>
处得到这个 <属性 对象
这是我尝试使用但无效的代码:
from discord import Spotify
@bot.command()
async def spotify(ctx, user: discord.Member = None):
if user == None:
user = ctx.author
pass
if user.activities:
for activity in user.activities:
if isinstance(activity, Spotify):
embed = discord.Embed(title = f"{user.name}'s Spotify", description = "Listening to{}".format(activity.title), color = 0xC902FF)
embed.set_thumbnail(url=activity.album_cover_url)
embed.add_field(name="Artist", value=activity.artist)
embed.add_field(name="Album", value=activity.album)
embed.set_footer(text="Song started at {}".format(activity.created_at.strftime("%H:%M")))
await ctx.send(embed=embed)
对于任何格式问题,我们深表歉意。不确定我是否正确使用了代码块
我也在使用 cogs,如果它完全不同的话。
只是希望它至少给我回一条用户正在播放的歌曲的消息,这样我就可以让它对不同的艺术家或歌曲做出不同的反应。
谢谢!
你可以试试看是不是你的Intents有问题。使用以下函数导入 all
:
intents = discord.Intents.all()
client = discord.Client(intents=intents)
连接到代码后,以下命令对我来说工作正常:
from discord import Spotify
@bot.command()
async def spotify(ctx, user: discord.Member = None):
if user == None:
user = ctx.author
pass
if user.activities:
for activity in user.activities:
if isinstance(activity, Spotify):
embed = discord.Embed(title = f"{user.name}'s Spotify", description = "Listening to{}".format(activity.title), color = 0xC902FF)
embed.set_thumbnail(url=activity.album_cover_url)
embed.add_field(name="Artist", value=activity.artist)
embed.add_field(name="Album", value=activity.album)
embed.set_footer(text="Song started at {}".format(activity.created_at.strftime("%H:%M")))
await ctx.send(embed=embed)
输出:
我正在开发我的第一个 bot 只是作为一种爱好和一些帮助我学习的东西 Python 我一直在尝试将 Spotify 与它集成,但它似乎不起作用。我还阅读了本网站上的其他 post,但没有帮助。
我已尝试通读文档,但我是初学者,无法在 google 上找到太多帮助。
如果我打印(discord.Spotify.title),我会在 0x0000020E42C5DE00>
处得到这个 <属性 对象这是我尝试使用但无效的代码:
from discord import Spotify
@bot.command()
async def spotify(ctx, user: discord.Member = None):
if user == None:
user = ctx.author
pass
if user.activities:
for activity in user.activities:
if isinstance(activity, Spotify):
embed = discord.Embed(title = f"{user.name}'s Spotify", description = "Listening to{}".format(activity.title), color = 0xC902FF)
embed.set_thumbnail(url=activity.album_cover_url)
embed.add_field(name="Artist", value=activity.artist)
embed.add_field(name="Album", value=activity.album)
embed.set_footer(text="Song started at {}".format(activity.created_at.strftime("%H:%M")))
await ctx.send(embed=embed)
对于任何格式问题,我们深表歉意。不确定我是否正确使用了代码块
我也在使用 cogs,如果它完全不同的话。
只是希望它至少给我回一条用户正在播放的歌曲的消息,这样我就可以让它对不同的艺术家或歌曲做出不同的反应。
谢谢!
你可以试试看是不是你的Intents有问题。使用以下函数导入 all
:
intents = discord.Intents.all()
client = discord.Client(intents=intents)
连接到代码后,以下命令对我来说工作正常:
from discord import Spotify
@bot.command()
async def spotify(ctx, user: discord.Member = None):
if user == None:
user = ctx.author
pass
if user.activities:
for activity in user.activities:
if isinstance(activity, Spotify):
embed = discord.Embed(title = f"{user.name}'s Spotify", description = "Listening to{}".format(activity.title), color = 0xC902FF)
embed.set_thumbnail(url=activity.album_cover_url)
embed.add_field(name="Artist", value=activity.artist)
embed.add_field(name="Album", value=activity.album)
embed.set_footer(text="Song started at {}".format(activity.created_at.strftime("%H:%M")))
await ctx.send(embed=embed)
输出: