I am grabbing a movie trailer from API results in order to show the 'Official Trailer'. I want to show the official trailer instead of featurettes/bloopers etc.
At the moment I am doing this which works for the most part, but some movies don't seem to accept it....
let movieTrailerUrl = data.videos.results.find(element => element.name.toLowerCase() === 'Official Trailer'.toLowerCase()).key;
For example, this movie clearly has available videos but it pulls in zero results...
https://www.themoviedb.org/movie/370172-no-time-to-die?language=en-US
Is there a better way to grab an 'Official Trailer' from the API?
找不到电影或节目?登录并创建它吧。
Travis Bell 的回复
于 2022 年 01 月 13 日 1:33下午
Each video object returns a field called
official
that you should be checking instead of anything to do with the name. Studios name their trailers all kinds of different things so that would not be a very reliable way to searching for official trailers.Request
Response
lowercase 的回复
于 2022 年 01 月 13 日 4:02下午
I feel like this doesn't solve the issue of Trailers specifically. Grabbing videos marked 'Official' means you also get anything else marked official - bloopers/featurettes/interviews/teasers etc.
Is the a way to specifically get the 'official movie trailer' as opposed to an 'offical video of any kind'?
Hope that makes sense and appreciate the help.
Travis Bell 的回复
于 2022 年 01 月 13 日 4:22下午
You wouldn't just grab anything marked as official. Instead, grab the items that are
type: Trailer
ANDofficial: true
.kingluiii 的回复
于 2022 年 02 月 26 日 5:52上午
what if I only want one trailer ...the final trailer only??
ticao2 🇧🇷 pt-BR 的回复
于 2022 年 02 月 26 日 7:23上午
All video responses contain this data:
So I think you should select what you want.
"published_at": I believe it's the date of publication on Youtube.
There is no API Request that returns only the latest, or most recent, official trailer.
OceanCat 的回复
于 2024 年 01 月 24 日 7:14上午
Guys, try -> const trailerUrl = movieVids?.results?.find(element => element.name.includes("Official Trailer") || element.name.includes("Trailer")) Use then trailerUrl.key.
It will find any video that have "Official Trailer" or "Trailer" in this name. So you guarantee TRAILER video.