Python сайт не отдает json

Всем привет!

Сайт https://hoff.ru/

Я хочу спарсит Каталог. В chrome->Network нашел запрос main которое выдает вес каталог в json. Когда переходишь https://hoff.ru/vue/main/ он не все данные дает. Как я вижу на сайте какая-то зашита стоит. Кто-нибудь может подсказать как спарсит?

import requests

url = "https://hoff.ru/vue/main/"

headers = {
    "accept": "application/json, text/plain, */*",
    "user-agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36"
}

response = requests.get(url=url, headers=headers1)

print(response.text)

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


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

Автор решения: Алексей
data = response.json()
print(data)

В этом случае вы получите json из /vue/main/ но я там не вижу каталога товаров. Его вообще нет на главной странице. Там есть несколько запросов к api по категориям типа: https://api.retailrocket.ru/api/2.0/recommendation/VisitorCategoryInterest/saleByLatest/5224c7b10d422d1c782cbc47/?&stockId=814&session=60431df8f739da00010b2f5a&algorithmType=VisitorCategoryInterest&pvid=911543183187145&isDebug=false&format=json

Но даже если вы разберетесь с api-запросом чтобы получить по нему весь каталог (а он там оооочень большой), то дальше столкнетесь с вопросом, который я решить не смог - В вашем запросе не хватает cookies, которые проверяет hoff. Не проблема взять их из запроса, но они будут работать только в течение дня, а на следующий день обновятся. На этом я забросил разбор. Может у кого-то получится.

→ Ссылка