如何基于TMDb API与tmdbv3api编写指定类型电影总数统计脚本
使用tmdbv3api获取指定类型电影总数的脚本
前置准备
- 安装依赖包:
pip install tmdbv3api - 从TMDb官方平台获取个人API密钥(注册账号后在账户设置中生成)
实现代码
from tmdbv3api import TMDb, Genre, Discover # 初始化TMDb客户端 tmdb = TMDb() tmdb.api_key = "你的API密钥" # 替换为实际密钥 tmdb.language = "zh-CN" # 可选,设置返回语言为中文 def get_genre_id(genre_name): """根据类型名称匹配TMDb对应的类型ID""" genre_client = Genre() all_genres = genre_client.movie_list() for genre in all_genres: if genre["name"] == genre_name: return genre["id"] return None def get_movie_total(genre_name): """获取指定类型的电影总数""" genre_id = get_genre_id(genre_name) if not genre_id: print(f"未找到匹配的类型:{genre_name}") return 0 discover_client = Discover() # 调用发现接口,仅需第一页数据即可拿到总数 discover_result = discover_client.discover_movies({ "with_genres": genre_id, "page": 1 }) return discover_result["total_results"] # 示例调用 if __name__ == "__main__": target_genre = "剧情" # 可替换为"恐怖"、"动作"等类型名称 total = get_movie_total(target_genre) print(f"【{target_genre}】类型的电影总数:{total}")
关键说明
- 类型名称需要和TMDb返回的标准名称完全匹配,设置
language="zh-CN"时使用中文名称即可 total_results字段返回的是TMDb数据库中该类型下的全部电影数量,包含未上映影片- 注意TMDb API的请求频率限制,避免短时间内高频调用导致访问受限
- 如果API密钥无效或权限不足,会返回401/403错误,请检查密钥配置
内容的提问来源于stack exchange,提问作者gcarterIT
相关产品推荐
相关产品推荐

