我是新手,所以这可能是一个愚蠢的错误我试图制作一个程序,将股票报价的价格作为 webhook 发送到不和谐。webhook 不发送。但是,当我执行 print(symbol.json()["Global Quote"]) 时,我得到了所有信息。我认为“Content-Type”存在问题:“application/json”,但我不确定如何解决它。这是一个片段:webhook = 'https://discordapp.com/api/webhooks/609119785015312414/HOkHGPWqfPfLJHpSp15XZ9dUNhUDly_DKQ8OwLgk3Rw0-4G08gx0mOrKN3FKhompb5ig'session = requests.session()symbol = session.get("https://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol=AAPL&apikey=F4RV85MVA2M2YTIY")data = {}data["content"] = symbol.json()["Global Quote"]data["username"] = "AAPL"result = requests.post(webhook, data=json.dumps(data), headers={"Content-Type": "application/json"})try: result.raise_for_status()except requests.exceptions.HTTPError as err: print(err)else: print("Payload delivered successfully, code {}.".format(result.status_code))输出为: 400 Client Error: BAD REQUEST for url: https://discordapp.com/api/webhooks/609119785015312414/HOkHGPWqfPfLJHpSp15XZ9dUNhUDly_DKQ8OwLgk3Rw0-4G08gx0mOrKN3FKhompb5ig顺便说一句 - 我在发布之前删除了 webhook
2 回答
繁星点点滴滴
TA贡献1803条经验 获得超3个赞
您的代码存在一个问题。Webhook 运行正常。
data["content"] = symbol.json()["Global Quote"]
在行中 data["content"] 是一个字典,而它需要是一个字符串
您必须将其转换为字符串
有两种方法可以解决此问题:-
使用 json 的第一种方法 -
import json
然后将此行编辑data["content"] = symbol.json()["Global Quote"]为 -
data["content"] = json.dumps(symbol.json()["Global Quote"])
第二种方式——
将此行编辑data["content"] = symbol.json()["Global Quote"]为 -
data["content"] = str(symbol.json()["Global Quote"])
喵喔喔
TA贡献1735条经验 获得超5个赞
做就是了:
from dhooks import Webhook
hook = Webhook("your-webhook")
hook.send("message-here")
添加回答
举报
0/150
提交
取消
