When sending a request with pagination within to API endpoints, there is no sorting, for example, according to the vote_average field.
So, why is there no similar query parameter, for example
api.themoviedb.org/3/trending/movie/week?page=2&order-by=vote_average
找不到电影或节目?登录并创建它吧。
Travis Bell 的回复
于 2025 年 06 月 11 日 10:16上午
Hi @gurkantuna,
For the trending data, this is by design. Trending is only useful to view in its original trending order. If you want more flexibility (although, there is no trending data) you should look at discover.
gurkantuna 的回复
于 2025 年 06 月 11 日 3:26下午
Thanks @travisbell , actually I wasn't just talking about only trending, but I think that the case I mentioned is also required for trending data. It doesn't matter if it is a trend data or any other filter, the paginated data should return by any sorting parameter.
You can review it from
https://movies.gurkantuna.com/genre/28/pages/2 => order by vote_up from 8.2
https://movies.gurkantuna.com/genre/28/pages/3 => order by vote_up from 8.2 again!
The data that should be there is below
/pages/2 example 20 data 8.2, 8.2, 8.1.......8.0
/pages/2 example 20 data 8.0, 8.0, 7.9,7.8.......7.7
However, you should have noticed that the vote_up ranking only exists based on the page you are on and does not continue from the next page. Because there is no endpoint in the API from where I can pull data in this way. So, have I explained this clearly now?
Travis Bell 的回复
于 2025 年 06 月 11 日 3:47下午
You should take a look at the discover endpoints. They are the only endpoints that support more dynamic queries like this. The options for
sort_by
are listed there.gurkantuna 的回复
于 2025 年 06 月 12 日 6:04上午
https://api.themoviedb.org/3/discover/movie?api_key=***&with_genres=16&sort_by=vote_average.desc
I'm currently receiving data that is close to my intention with 'sort_by=vote_average.desc'. But even weird movies with a budget of $0 seem to get 10 points :)
It seems like your backend service calculates the average even for 1 vote, which I think is wrong and open to similar manipulation. You should include the average calculation at least after 50-60~ votes.
I finally gave up because of the weird ratings. Thanks for your help though.
Travis Bell 的回复
于 2025 年 06 月 12 日 7:35上午
If you want to only include movies with a certain number of votes, you should use the
vote_count.gte
filter.gurkantuna 的回复
于 2025 年 06 月 12 日 8:01上午
Oh, I should have reviewed the parameters more carefully. I added
vote_count.gte
param and the data is more accurate now, thanks.