我向下面的 iTunes API 端点运行了一堆 HTTP GET 请求,以查询艺术家 ID 列表(一次 200 个)。
在过去的几个月里,我的脚本运行良好,但最近来自我的服务器的每个请求都以 403 状态提供服务。我在本地机器上重新运行了相同的查询,它们运行良好。然后我为我的服务器重新分配了一个不同的 IP,并且请求偶尔得到服务(大多数仍然以 403 的形式返回)。甚至对单个艺术家 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
有谁知道 Apple 是否开始对可以从单个 IP 向其 Search API 发出的请求数量执行更严格的规则?我想知道他们对 EC2 实例 IP 的规则是否与常规 IP 不同?!