Проблема с парсингом OLX

Рейтинг: 0Ответов: 1Опубликовано: 25.03.2023

введите сюда описание изображения

Здравствуйте столкнулся с проблемой парсинга сайта OLX. Для получения номера нужно нажать на кнопку но при использовании request и bs4 нажать никак(Нужны именно они а не selenium) Я подумал возможно проверить в запросах при нажатии на кнопку и да запросы идут.
введите сюда описание изображения

введите сюда описание изображения

Но вот когда пытаюсь добыть номер с api не выходит ничего.

введите сюда описание изображения Можете кто то подсказать что не так делаю? Возможно там еще проверки есть но я не очень силен в програмировании. Апи добывал вот так.

import requests
import json

url = 'https://www.olx.ua/api/v1/offers/385076614/'
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'}
response = requests.get(url,headers=headers)
data = json.loads(response.content)
print(data)

Ссылка на обяву https://www.olx.ua/d/obyavlenie/pamyatnaya-banknota-160-let-so-dnya-rozhdeniya-ivana-franko-IDq3K18.html?reason=ip%7Clister

Ответы

▲ 0

Проблема в том, что с этим запросом идет Bearer токен. Он уникальный, в каждом запросе меняется. С ним номер можно получить. Это легко проверить, скопировав этот токен и добавив его в запросе в заголовки. Но если речь идет о парсинге большого к-ва объявлений, то нужно этот токен каким-то образом получать. Почитав инфу по их Апи, уяснил, что каждому зарегиному юзеру в их системе (тут: введите сюда описание ссылки), выдается свой персональный токен, который обновляется раз в месяц. Руки не дошли до регистрации и попытке использовать его. Кто-то уже пробовал ? Или возможно нашли другой способ получения этого токена или некоего обхода этой защиты ?