终端中的空响应

问题描述 投票:0回答:1

我正在尝试使用 API 制作一个笑话生成器。这就是我所做的:

import requests
print("Welcome to Jokes Generator")
devjokes_data = requests.get("https://v2.jokeapi.dev/joke/Any?blacklistFlags=nsfw,religious,sexist&type=twopart").text
setup = devjokes_data[3].replace('"','')
punchline = devjokes_data[4].replace('"','')
print(setup)
print(punchline)

但是当我这样做时,我得到了这样的回应:

Welcome to Jokes Generator
 

我不知道发生了什么。我希望它能打印出设置和妙语。但它只是空的。我不知道如何解决这个问题。

python api get
1个回答
0
投票

下面的代码应该可以工作......

import requests
print("Welcome to Jokes Generator")
devjokes_data = requests.get("https://v2.jokeapi.dev/joke/Any?blacklistFlags=nsfw,religious,sexist&type=twopart")
devjokes_data = devjokes_data.json()
setup = devjokes_data.get("setup")
punchline = devjokes_data.get("delivery")
print(setup)
print(punchline)

问题可能是您正在使用

requests.get("apiEndPoint").text

获取文本中的所有响应并将字符串作为数组处理将无法正常工作,这就是你的输出为空的原因。此代码会将响应更改为 JSON 或 dict 并轻松获取数据

© www.soinside.com 2019 - 2024. All rights reserved.