def get_random_movie(self):
     max_pages_for_random_choice = 100
     random_page = randint(1, max_pages_for_random_choice)
     endpoint = self.BASE_URL + 'discover/movie'
     http_response = requests.get(endpoint, params=Payload(page=random_page))
     if http_response.status_code == 200:
         return PagedResponse(http_response.json(), media_type=MediaType.MOVIE).results[randint(1, 19)]
     return None
 def discover_movies(self, payload):
     endpoint = self.BASE_URL + 'discover/movie'
     http_response = requests.get(endpoint, params=payload)
     if http_response.status_code == 200:
         return PagedResponse(http_response.json(), media_type=MediaType.MOVIE).results
     return None
 def multi_search(self, query, page=1):
     endpoint = self.BASE_URL + 'search/multi'
     http_response = requests.get(endpoint, params=Payload(page=page, query=query))
     if http_response.status_code == 200:
         return PagedResponse(http_response.json()).results
     return None
 def get_tv_show_recommendations(self, tv_show_id, page=1):
     endpoint = self.BASE_URL + 'tv/{tv_show_id}/recommendations'.format(tv_show_id=tv_show_id)
     http_response = requests.get(endpoint, params=Payload(page=page))
     if http_response.status_code == 200:
         return PagedResponse(http_response.json(), media_type=MediaType.TV).results
     return None
 def get_movie_recommendations(self, movie_id, page=1):
     endpoint = self.BASE_URL + 'movie/{movie_id}/recommendations'.format(movie_id=movie_id)
     http_response = requests.get(endpoint, params=Payload(page=page))
     if http_response.status_code == 200:
         return PagedResponse(http_response.json(), media_type=MediaType.MOVIE).results
     return None
 def get_movies_in_theatres(self, page=1):
     endpoint = self.BASE_URL + 'movie/now_playing'
     http_response = requests.get(endpoint, params=Payload(page=page, region='US'))
     if http_response.status_code == 200:
         return PagedResponse(http_response.json(), media_type=MediaType.MOVIE).results
     return None
 def get_popular_people(self, page=1):
     endpoint = self.BASE_URL + 'person/popular'
     http_response = requests.get(endpoint, params=Payload(page=page))
     if http_response.status_code == 200:
         return PagedResponse(http_response.json(), media_type=MediaType.PERSON).results
     return None
 def get_tv_on_the_air(self, page=1):
     endpoint = self.BASE_URL + 'tv/on_the_air'
     http_response = requests.get(endpoint, params=Payload(page=page))
     if http_response.status_code == 200:
         return PagedResponse(http_response.json(), media_type=MediaType.TV).results
     return None
 def get_top_rated_movies(self, page=1):
     endpoint = self.BASE_URL + 'movie/top_rated'
     http_response = requests.get(endpoint, params=Payload(page=page))
     if http_response.status_code == 200:
         return PagedResponse(http_response.json(), media_type=MediaType.MOVIE).results
     return None