Python调用OMDb API获取数据后无法当作JSON或字典使用如何解决
问题原因
你调用的OMDb API返回的是标准JSON格式响应,不需要使用BeautifulSoup做HTML解析。BeautifulSoup是专门用于解析HTML/XML格式内容的工具,不适用于JSON数据的解析,你当前的操作是将JSON字符串传入HTML解析器生成了BeautifulSoup对象,该对象本身不支持字典式的键值访问,因此无法直接通过["Title"]的方式取值。
解决方案
requests库内置了JSON响应解析方法,直接调用response.json()即可将返回结果转换为Python字典,直接按键取值即可。
正确实现代码如下:
import requests url = "http://www.omdbapi.com/?apikey=73a4d84d&t=Tenet" response = requests.get(url) # 将响应解析为Python字典 result = response.json() print(result["Title"])
补充说明
如果运行时出现JSON解析报错,可以先打印response.text查看实际返回的内容结构,确认接口是否正常返回了符合格式的JSON数据,再选择对应的解析逻辑。
内容的提问来源于stack exchange,提问作者newfile.py
相关产品推荐
相关产品推荐

