Python request.get завершается ошибкой с 403 запрещенными, даже после использования заголовков и объекта Session - PullRequest
0 голосов
/ 07 января 2020

Я делаю GET-запрос для получения JSON, который работает абсолютно нормально из любого браузера на любом устройстве, но не по python запросам:

url = 'https://angel.co/autocomplete/new_tags'                         
params = {'query': 'sci', 'tag_type': 'MarketTag'}
resp = requests.get(url,params=params)
resp.raise_for_status()

дает HTTPError: 403 Client Error: Forbidden for url: https://angel.co/autocomplete/new_tags?query=ab&tag_type=MarketTag

Итак, я попробовал:

  1. Python запросов. 403 Forbidden - я пытался использовать не только User-Agent в заголовках, но и все другие заголовки, которые я нашел в разделе Request Headers в firefox для ответа JSON, но все равно 403!
  2. Python запросов - 403 запрещено - несмотря на установку заголовков `User-Agent` - Отправляя запрос через объект Session, я все равно получаю 403!

Что может быть возможной причиной? Есть ли что-то еще, что я мог бы попробовать использовать?

EDIT: Запрос заголовков (проверка раздела заголовков JSON в firefox), который я использовал в атрибуте headers:

{'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Encoding': 'gzip, deflate, br',
'Accept-Language':  'en-US,en;q=0.5',
'Connection': 'keep-alive',
'Host': 'angel.co',
'If-None-Match: 'W/"5857a9eac987138be074e7bdd4537df8"',
'TE': 'Trailers',
'Upgrade-Insecure-Requests': 1,
'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0'}
...