如何通过OMDb API及PowerShell获取指定季集的剧集信息?
问题原因及解决方法
你的代码使用了s参数,这是OMDb API的搜索模式,仅返回匹配标题的剧集列表基础信息,无法获取单集详情。要指定季集获取单集信息,需要切换到详情模式,用t(剧集标题)或i(剧集IMDb ID)参数搭配season和episode。
正确查询格式示例
方法1:直接通过剧集标题+季集参数请求
$key = "你的API密钥" # 使用t参数指定剧集标题,同时传入season和episode $episodeDetails = Invoke-RestMethod "http://www.omdbapi.com/?apikey=$key&t=The Last Ship&season=2&episode=2" # 输出单集的完整信息 $episodeDetails
方法2:通过IMDb ID请求(更可靠,避免标题重名)
如果存在同名剧集,用IMDb ID定位会更准确:
$key = "你的API密钥" # 先搜索获取《The Last Ship》的IMDb ID $seriesSearch = Invoke-RestMethod "http://www.omdbapi.com/?apikey=$key&s=The Last Ship&type=series" $targetImdbID = $seriesSearch.Search[0].imdbID # 用IMDb ID搭配季集参数请求单集 $episodeDetails = Invoke-RestMethod "http://www.omdbapi.com/?apikey=$key&i=$targetImdbID&season=2&episode=2" # 输出单集信息 $episodeDetails
关键说明
- 不要同时使用
s参数和season/episode参数,前者是搜索模式,后者仅在详情模式(t/i参数)下生效。 - 调用后直接输出
$episodeDetails即可看到单集的标题、剧情、评分等完整信息,无需再筛选Search集合。
内容的提问来源于stack exchange,提问作者Paul
相关产品推荐
相关产品推荐

