Python如何过滤TMDB API响应结果,仅保留指定字段?
提取指定字段数据的方法
当然可以只提取你需要的字段,核心思路是遍历返回结果里的results列表,对每个电影条目筛选出目标字段。
修改后的代码如下:
import requests from pprint import pprint api_key='<mykey>' # 替换为你的API密钥 movie_title='The Godfather' url = f'https://api.themoviedb.org/3/search/movie?api_key={api_key}&query={movie_title}' results = requests.get(url) j = results.json() # 提取需要的字段 filtered_results = [] for movie in j['results']: filtered_movie = { 'id': movie['id'], 'original_title': movie['original_title'], # 用get方法避免字段不存在时抛出KeyError,默认值设为'未找到' 'release_date': movie.get('release_date', '未找到') } filtered_results.append(filtered_movie) pprint(filtered_results)
代码说明
- 遍历
j['results']里的每一部电影条目 - 对每个条目,只保留
id、original_title和release_date三个字段 - 使用
movie.get('release_date', '未找到')是为了防止某些电影没有release_date字段时程序报错,会返回默认值'未找到'
运行后你会得到类似这样的精简结果:
[{'id': 238, 'original_title': 'The Godfather', 'release_date': '1972-03-14'}, {'id': 240, 'original_title': 'The Godfather: Part II', 'release_date': '1974-12-20'}, ...]
内容的提问来源于stack exchange,提问作者TheMonkfish
相关产品推荐
相关产品推荐

