两部分嵌入式 API 消息 Discord.py(分支>重写)



如何制作API,如:https://sv443.net/jokeapi/v2/joke/Dark?blacklistFlags=nsfw,宗教,政治,种族主义,性别歧视&type=两部分看起来像这样?

https://i.stack.imgur.com/OyWQ6.png

我使用了aiohttp,但你需要导入它。然后将信息作为json进行响应。

@bot.command()
async def joke(ctx):
url = 'https://sv443.net/jokeapi/v2/joke/Dark?blacklistFlags=nsfw,religious,political,racist,sexist&type=twopart'
async with aiohttp.ClientSession() as session:
async with session.get(url) as r:
if r.status == 200:
info = await r.json()
embed = discord.Embed(title=info['setup'], description=info['delivery'])
await ctx.send(embed=embed)

您可以使用requestsurllib模块,但它们正在阻止您应该使用aiohttp

import aiohttp
@bot.command()
async def joke_embed(ctx):
async with aiohttp.ClientSession as cs:
async with cs.get('https://sv443.net/jokeapi/v2/joke/Dark?blacklistFlags=nsfw,religious,political,racist,sexist&type=twopart') as res:
resp = await res.json()

setup, delivery = resp['setup'], resp['delivery']
embed = discord.Embed(title=setup, description=delivery, colour=discord.Colour.greyple())
await ctx.send(embed=embed)
  • aiohttp文档

最新更新