@organica

GET запрос работает в POSTman, но возвращает 403 в python requests?

Собственно, проблема следующая:
Postman отрабатывает отлично и возвращает ожидаемый результат
5ef5bfc569c0b193705559.png

А python на аналогичный запрос выдает 403 код. Хотя вроде как заголовки одинаковые. Что ему, собаке, не хватает?
import requests
from pprint import pprint

url = 'http://ovga.mos.ru:8080/_ajax/pass/list?search={%22grz%22:%22К239ММ159%22}&sort=validitydate&order=desc'

headers = {"X-Requested-With": "XMLHttpRequest",
           'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) '
                         'Chrome/54.0.2840.99 Safari/537.36',
           }
response = requests.get(url, headers)

pprint(response)

<Response [403]>
  • Вопрос задан
  • 3670 просмотров
Решения вопроса 1
kshnkvn
@kshnkvn
yay ✌️ t.me/kshnkvn
Ты не все заголовки передал. Postman по-умолчанию генерирует некоторые заголовки самостоятельно, вот так подключается нормально:
headers = {
    'Host': 'ovga.mos.ru',
    'User-Agent': 'Magic User-Agent v999.26 Windows PRO 11',
    'Accept': '*/*',
    'Accept-Encoding': 'gzip, deflate, br',
    'Connection': 'keep-alive',
    'X-Requested-With': 'XMLHttpRequest'
}
url = 'http://ovga.mos.ru:8080/_ajax/pass/list?search={"grz":"К239ММ159"}&sort=validitydate&order=desc'
response = requests.get(url, headers=headers)

<Response [200]>
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
ScriptKiddo
@ScriptKiddo
Сгенерируйте сниппет для Python, так будете уверены что ничего не пропустите

https://learning.postman.com/docs/postman/sending-...
Ответ написан
@GoldCode
Сейчас 03.06.2024 не работает через веб интерфейс, магафоновская защита от ботов срабатывает, но работает у компаний которые занимаются парсингом сайтов. Есть предложения как они обошли защиту мегафоновскую.
возможно поменяли url post запроса.
1. вариант url"a https://transport.mos.ru/ru/ajax/App/Etp_ServiceCo...
2. вариант https://transport.mos.ru/ajax/App/Etp_ServiceContr...
3. вариант https://transport.mos.ru/ajax/App/Etp_ServiceContr...

возможно они забыли поменять url в веб интерфейсе
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы