2013-10-13 2 views
0

아래 iTunes API 엔드 포인트에 일련의 HTTP GET 요청을 실행하여 아티스트 ID 목록 (한 번에 200 개)을 쿼리합니다.iTunes Search API는 하나의 IP에서 오는 모든 GET 요청에 대해 403 오류를 반환합니다.

내 스크립트는 지난 몇 달 동안 잘 작동했지만 요즘 내 서버에서 오는 모든 단일 요청에는 403 상태가 제공됩니다. 내 로컬 컴퓨터에서 동일한 쿼리를 다시 실행하여 정상적으로 작동했습니다. 그런 다음 다른 IP를 내 서버에 재 할당했고 요청이 산발적으로 제공되었습니다 (대부분 403s로 돌아옴). 단일 아티스트 ID에 대한 요청도 403 번 제공됩니다.

import requests 
artist_ids = "<id1>,<id2>,..." 
itunes_search_url = "https://itunes.apple.com/lookup?id={0}".format(artist_ids) 
r = requests.get(itunes_search_url) 
print r.status_code 
=> 403 
애플은 하나의 IP에서 자신의 검색 API를 할 수있는 요청의 수 주위에 엄격한 규칙을 적용하기 시작하면

사람이 알고 있나요 ? 그들이 정규 IP보다 EC2 인스턴스 IP에 대해 다른 규칙을 가지고 있는지 궁금합니다.

답변

0

이것을 닫으면 Apple이 검색 API 결과를 캐싱하도록 권장하는 것처럼 보입니다. 이것이 내가 작동하도록하는 유일한 방법입니다.