Как обойти HTTP Error 429?

Я столкнулся с проблемой,а именно с обходом ограничения запроса в данной ссылке https://www.instagram.com/'+ parse +'/?__a=1'.Я пробовал обойти через подмену User-agent,но у меня ничего не получилось

import json
import urllib.request
 
 
headers = {
    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36'
}
 
url = 'https://www.instagram.com/zuck/?__a=1'
rq = urllib.request.Request(url, headers=headers)
 
data1 = urllib.request.urlopen(rq)
data = json.loads(data1.read())
print("id",data['graphql']['user']['id'])

Ответы (1 шт):

Автор решения: Jack_oS

HTTP 429 Too Many Requests код ответа указывает, что пользователь отправил слишком много запросов за последнее временя ("ограничение скорости" или "rate limiting" ).

Обойти можно:

  • сделать паузы между запросами;
  • менять user-agent;
  • менять ip через proxies

Но 429 можно встретить и при единичном запросе:

>>> import requests
>>> url = 'https://www.instagram.com/geeks_for_geeks/'
>>> headers={'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36'}
>>> r = requests.get(url, headers)
>>> r
<Response [429]>

а при указании headers=headers:

>>> r = requests.get(url, headers=headers)
>>> r
<Response [200]>
→ Ссылка