Найти - Пользователи
Полная версия: как обойти ошибку 403 на таких сайтах как ozon и eldorado?
Начало » Python для новичков » как обойти ошибку 403 на таких сайтах как ozon и eldorado?
1
Naipalych
Добрый день!
Ситуация в общем такая:
пишу на python телеграмм бота, который действует так:
1. Пользователь вносит в программу список сайтов.
2. Бот каждый час направляет запрос на сайт, и если статус 200 то все ок.
3. Но если статус отличается от 200 то пользователю бота должно быть отправлено сообщение.
Собственно проблема заключается в том, что большинство сайтов например мвидео, магнит отправляют статус 200 все ок. Но есть сайты такие как ozon или eldorado которые несмотря на переданный словарь header c параметрами user.agent и т.д. выдают ошибку 403 (отказано в доступе). Запросы выполняю через библиотеку requests.
Подскажите, пожалуйста, что можно сделать в данном случае?

Пример кода:

import requests
headers = {
“Accept”: “application/json”,
“Accept-Encoding”: “br, gzip, deflate”,
“Accept-Language”: “ru,en;q=0.9,en-GB;q=0.8,en-US;q=0.7”,
“Host”: “httpbin.org”,
“Referer”: "https://httpbin.org/“,
”Sec-Ch-Ua“: ”\“ Not A;Brand\”;v=\“99\”, \“Chromium\”;v=\“102\”, \“Microsoft Edge\”;v=\“102\”“,
”Sec-Ch-Ua-Mobile“: ”?0“,
”Sec-Ch-Ua-Platform“: ”\“Windows\”“,
”Sec-Fetch-Dest“: ”empty“,
”Sec-Fetch-Mode“: ”cors“,
”Sec-Fetch-Site“: ”same-origin“,
”User-Agent“: ”Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.63 Safari/537.36 Edg/102.0.1245.33“,
”X-Amzn-Trace-Id“: ”Root=1-62a3330c-723e022541074b446b5835b4“
}
response = requests.get(”https://www.ozon.ru/", headers=headers)
print(response.status_code)
AD0DE412
requests <=> selenium ?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB