使用 Discord Bot 从网站获取信息的方法

Way to Get Information from Website With Discord Bot

我正在使用 python 编写一个 discord bot,我正在尝试找出一种通过 bot 命令访问网站的方法。

理论上,我会命令 link 机器人到站点,获取信息,然后将特定信息放入聊天中。

这就是我要使用的:https://api.quotable.io/random,让它像 !quote 一样,然后机器人将获取其中的 'content' 和 'author' 位.

有办法吗?我找不到在线文档中写的任何内容。

抱歉,如果这令人困惑,我不是 100% 确定我在做什么。

您可以使用 requests 库来完成此操作。下面的代码导入库,为 api 创建查询,然后发出请求,最后打印响应。

import requests

query = "https://api.quotable.io/random" 
response = requests.get(query) 
print(respsonse)

要输出响应的特定部分,您需要使用 JSON 格式。下面的代码仅输出您发出的 api 请求的消息内容。

import requests

query = "https://api.quotable.io/random" 
response = requests.get(query)
print(response["content"]) 

要实现这一点,您可以使用内置的 message.send 而不是打印响应。下面是一个示例。此代码发出相同的请求,而是输出 api 请求的内容。

import discord
import requests

@commands.command()
async def search(ctx): 
    query = "https://api.quotable.io/random"
    response = requests.get(query)
    output = "The quote is " + response["content"]
await ctx.send(output)