我需要从REST API检索500部最受欢迎的电影,但结果每页限制20个,我每10秒只能进行40次调用(https://developers.themoviedb.org/3/getting-started/request-rate-limiting)。 我无法动态地遍历分页结果,以便将500个最受欢迎的结果放在单个列表中。
我可以成功返回前20个最受欢迎的电影(如下所示)并枚举电影编号,但我卡在了通过循环允许我分页浏览前500个而不因API速率限制超时。
我可以成功返回前20个最受欢迎的电影(如下所示)并枚举电影编号,但我卡在了通过循环允许我分页浏览前500个而不因API速率限制超时。
import requests #to make TMDB API calls
#Discover API url filtered to movies >= 2004 and containing Drama genre_ID: 18
discover_api = 'https://api.themoviedb.org/3/discover/movie?
api_key=['my api key']&language=en-US&sort_by=popularity.desc&include_adult=false&include_video=false&primary_release_year=>%3D2004&with_genres=18'
#Returning all drama films >= 2004 in popularity desc
discover_api = requests.get(discover_api).json()
most_popular_films = discover_api['results']
#printing movie_id and movie_title by popularity desc
for i, film in enumerate(most_popular_films):
print(i, film['id'], film['title'])
Sample response:
{
"page": 1,
"total_results": 101685,
"total_pages": 5085,
"results": [
{
"vote_count": 13,
"id": 280960,
"video": false,
"vote_average": 5.2,
"title": "Catarina and the others",
"popularity": 130.491,
"poster_path": "/kZMCbp0o46Tsg43omSHNHJKNTx9.jpg",
"original_language": "pt",
"original_title": "Catarina e os Outros",
"genre_ids": [
18,
9648
],
"backdrop_path": "/9nDiMhvL3FtaWMsvvvzQIuq276X.jpg",
"adult": false,
"overview": "Outside, the first sun rays break the dawn. Sixteen years old Catarina can't fall asleep. Inconsequently, in the big city adults are moved by desire... Catarina found she is HIV positive. She wants to drag everyone else along.",
"release_date": "2011-03-01"
},
{
"vote_count": 9,
"id": 531309,
"video": false,
"vote_average": 4.6,
"title": "Brightburn",
"popularity": 127.582,
"poster_path": "/roslEbKdY0WSgYaB5KXvPKY0bXS.jpg",
"original_language": "en",
"original_title": "Brightburn",
"genre_ids": [
27,
878,
18,
53
],
我需要使用Python循环将分页结果追加到单个列表中,直到我捕获了500部最受欢迎的电影。
Desired Output:
Movie_ID Movie_Title
280960 Catarina and the others
531309 Brightburn
438650 Cold Pursuit
537915 After
50465 Glass
457799 Extremely Wicked, Shockingly Evil and Vile
"page": 1, "total_pages": 5085, ...}
),我希望它能够接受一个page=n
字段。 - Serge Ballesta