Не удается получить ссылку или ID размера товара при парсинге веб-сайта

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

Пытаюсь спрасить товар конкретного размера с сайта sportmaster.ru.


Первый запрос делаю к странице товара (https://www.sportmaster.ru/product/26194560299/), получаю вполне нормальный ответ.
Запрос:

cookies = {
        'UDID': '1c4ed12e-44ce-4d9d-a40d-2b66b9dc4649',
        'SMID': 'eyJhbGciOiJSUzI1NiJ9.eyJqdGkiOiJmNzJmMTVhNy03YTIxLTQ3ZmQtOTIxMy03NDcwMTc0NDUyOWUiLCJpc3MiOiJTTTMwIiwiaWF0IjoxNjg3Nzk1NjgyLCJhdWQiOiJzcG9ydG1hc3RlciIsImFuVCI6ImU4YzdkZTc2LTUwMGItNDY3MS1iOTcxLWNlYzE3YzE1N2VlYyIsImFuUCI6ImU0OTkyMmI0LTI5NjEtNGQ4YS05MzQ3LTIwNmIwNzM2YjAzNyIsImFuVSI6IjEwMDAwMDAwNjU1MzUyNjQ5MyIsImNhblAiOiJBSUFna3RPaVBYYm40cklvb1dCMjA3SmhhU3dBQlMvb0tETCtLUW9NeEhCQjZJUzNUNWZYbExEb0Y1Qnc3NlJ3UGdQUlltOWhMZDBGaHlyTkg1SG5tdTVBVDlHck9RRGFVdTV0NkswWFY3dnppMGhqMmxSbGVlMXhHd3JGRWhadHB2RGJDRWc1Sm1rTGtKRjVFN3ZraG1IcEtYYXVoVGV2Z3Ewd3I5SE9jcVZrSEswaWtNbnk2MXlZLzI4dEh3SExEaVp4WWN0V3VuWWdIeVh4OU8xU3FEMkgrcVhGYWU0WXFWUmczclpBcFl1STZLUjFENlNQL2NVYTBqM0dUOW9UMlFrPSIsImNhblQiOiJBSUFvN3JrNnBIbTNQQmRoVDNYUDI4Ky83YmJGWXNCb2hHY0Z2bGQyblVZcHEvVGhzL0NWLzhNSVYxeXR5WFNnclFiMXdEQUpZZytrM0lzTHZyWlZMUkFKanlMZnFEdC9SZ29OdC9rcmxEMmh1QmZseVJkdmhGMjZRb0toV2p2b2E2dWt5U3FHcFJQQytMUE5kTjVHYUJLaTREQTA4NHRJOUVIVitHS1Z1aEpxM0VSckhjNnEzaEtuMjlWVWxEZVBDQ1pwanRZMURicm9FWVpXVFlubWh2SE9yM3VUdkpKQXhCS2xNL3dibHBjN3o2VER5azU0bk9sY3kxdjU0R3pLT2dJPSIsInYiOiJWMiJ9.GNhsG76fmvZ6uS-JHH8ZMrnQfwdvcgqBDdinz6mZ9BF5QqDJVVO9kfxQunL78RUDhaZZn0D8JN5nQqaHW_jOl8ByypOnZqi5r8pyLuPQC_-kM8amTtlAl9Y7xHEDIPMXnLra4glh6ywN2qlQrJ3B9LEJeVw6qhrnmq6C0C0Y6j1d79oxPCptcqoPXAmtp53Qt2vbsIm5_EwtzD51yDGulgWgPwyGHcJ2qdp3Dro1HzNP9vjgBKyRfc4vuU17rDIzfXcV6TKhvxXxUboIXIRcHe6LsNz0lfKYMVoYd0FTsosYq6foNA3QXK_JyVk9WnPcNKSJluWhFPCr0LiVT198Wg',
        'SMAUTH': 'eyJpZCI6ImU0OTkyMmI0LTI5NjEtNGQ4YS05MzQ3LTIwNmIwNzM2YjAzNyIsInN0IjoiUkVUVVJORUQiLCJ0bSI6MTY4Nzg1NDY5MH0=',
        'utm_paidsource': 'google',
        'campaign': 'undefined',
        'userAuth': '0',
        '_ga_Z7E27793QJ': 'GS1.1.1688132410.14.1.1688136133.56.0.0',
        '_ga': 'GA1.2.1724500244.1687795689',
        'gdeslon.ru.__arc_domain': 'gdeslon.ru',
        'gdeslon.ru.user_id': '181c83c2-a4d6-4030-82cc-f3d72f0bc5ee',
        'tmr_lvid': 'dbaf907f2b8e4dac50ff1eec440d5909',
        'tmr_lvidTS': '1650745384547',
        '_ym_uid': '1650745429154025559',
        '_ym_d': '1687795691',
        'adrcid': 'AVd4ft9sZ85UM-cOWWQMNXw',
        'userId': '100000006553523997',
        'ab_frisbuy': '2',
        '_ga_R1JBBZ02M3': 'GS1.2.1688135589.7.0.1688135589.0.0.0',
        'spcount': '143',
        'qrator_jsid': '1688132410.001.7OecZByY4zz7dcHQ-0jo90b39in0pkqn282gs7qd28ad8ke0p',
        '_gid': 'GA1.2.1402592043.1688132416',
        '_ym_isad': '2',
        '_ym_visorc': 'w',
        'tmr_detect': '0^%^7C1688136124249',
        '_dc_gtm_UA-3450216-4': '1',
        '_dc_gtm_UA-3450216-27': '1',
    }

    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/114.0',
        'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8',
        'Accept-Language': 'ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3',
        # 'Accept-Encoding': 'gzip, deflate, br',
        'Connection': 'keep-alive',
        # 'Cookie': 'UDID=1c4ed12e-44ce-4d9d-a40d-2b66b9dc4649; SMID=eyJhbGciOiJSUzI1NiJ9.eyJqdGkiOiJmNzJmMTVhNy03YTIxLTQ3ZmQtOTIxMy03NDcwMTc0NDUyOWUiLCJpc3MiOiJTTTMwIiwiaWF0IjoxNjg3Nzk1NjgyLCJhdWQiOiJzcG9ydG1hc3RlciIsImFuVCI6ImU4YzdkZTc2LTUwMGItNDY3MS1iOTcxLWNlYzE3YzE1N2VlYyIsImFuUCI6ImU0OTkyMmI0LTI5NjEtNGQ4YS05MzQ3LTIwNmIwNzM2YjAzNyIsImFuVSI6IjEwMDAwMDAwNjU1MzUyNjQ5MyIsImNhblAiOiJBSUFna3RPaVBYYm40cklvb1dCMjA3SmhhU3dBQlMvb0tETCtLUW9NeEhCQjZJUzNUNWZYbExEb0Y1Qnc3NlJ3UGdQUlltOWhMZDBGaHlyTkg1SG5tdTVBVDlHck9RRGFVdTV0NkswWFY3dnppMGhqMmxSbGVlMXhHd3JGRWhadHB2RGJDRWc1Sm1rTGtKRjVFN3ZraG1IcEtYYXVoVGV2Z3Ewd3I5SE9jcVZrSEswaWtNbnk2MXlZLzI4dEh3SExEaVp4WWN0V3VuWWdIeVh4OU8xU3FEMkgrcVhGYWU0WXFWUmczclpBcFl1STZLUjFENlNQL2NVYTBqM0dUOW9UMlFrPSIsImNhblQiOiJBSUFvN3JrNnBIbTNQQmRoVDNYUDI4Ky83YmJGWXNCb2hHY0Z2bGQyblVZcHEvVGhzL0NWLzhNSVYxeXR5WFNnclFiMXdEQUpZZytrM0lzTHZyWlZMUkFKanlMZnFEdC9SZ29OdC9rcmxEMmh1QmZseVJkdmhGMjZRb0toV2p2b2E2dWt5U3FHcFJQQytMUE5kTjVHYUJLaTREQTA4NHRJOUVIVitHS1Z1aEpxM0VSckhjNnEzaEtuMjlWVWxEZVBDQ1pwanRZMURicm9FWVpXVFlubWh2SE9yM3VUdkpKQXhCS2xNL3dibHBjN3o2VER5azU0bk9sY3kxdjU0R3pLT2dJPSIsInYiOiJWMiJ9.GNhsG76fmvZ6uS-JHH8ZMrnQfwdvcgqBDdinz6mZ9BF5QqDJVVO9kfxQunL78RUDhaZZn0D8JN5nQqaHW_jOl8ByypOnZqi5r8pyLuPQC_-kM8amTtlAl9Y7xHEDIPMXnLra4glh6ywN2qlQrJ3B9LEJeVw6qhrnmq6C0C0Y6j1d79oxPCptcqoPXAmtp53Qt2vbsIm5_EwtzD51yDGulgWgPwyGHcJ2qdp3Dro1HzNP9vjgBKyRfc4vuU17rDIzfXcV6TKhvxXxUboIXIRcHe6LsNz0lfKYMVoYd0FTsosYq6foNA3QXK_JyVk9WnPcNKSJluWhFPCr0LiVT198Wg; SMAUTH=eyJpZCI6ImU0OTkyMmI0LTI5NjEtNGQ4YS05MzQ3LTIwNmIwNzM2YjAzNyIsInN0IjoiUkVUVVJORUQiLCJ0bSI6MTY4Nzg1NDY5MH0=; utm_paidsource=google; campaign=undefined; userAuth=0; _ga_Z7E27793QJ=GS1.1.1688132410.14.1.1688136133.56.0.0; _ga=GA1.2.1724500244.1687795689; gdeslon.ru.__arc_domain=gdeslon.ru; gdeslon.ru.user_id=181c83c2-a4d6-4030-82cc-f3d72f0bc5ee; tmr_lvid=dbaf907f2b8e4dac50ff1eec440d5909; tmr_lvidTS=1650745384547; _ym_uid=1650745429154025559; _ym_d=1687795691; adrcid=AVd4ft9sZ85UM-cOWWQMNXw; userId=100000006553523997; ab_frisbuy=2; _ga_R1JBBZ02M3=GS1.2.1688135589.7.0.1688135589.0.0.0; spcount=143; qrator_jsid=1688132410.001.7OecZByY4zz7dcHQ-0jo90b39in0pkqn282gs7qd28ad8ke0p; _gid=GA1.2.1402592043.1688132416; _ym_isad=2; _ym_visorc=w; tmr_detect=0^%^7C1688136124249; _dc_gtm_UA-3450216-4=1; _dc_gtm_UA-3450216-27=1',
        'Upgrade-Insecure-Requests': '1',
        'Sec-Fetch-Dest': 'document',
        'Sec-Fetch-Mode': 'navigate',
        'Sec-Fetch-Site': 'none',
        'Sec-Fetch-User': '?1',
        # Requests doesn't support trailers
        # 'TE': 'trailers',
    }

    response = requests.get('https://www.sportmaster.ru/product/26194560299', cookies=cookies, headers=headers)
    print(response.status_code)
    soup = BeautifulSoup(response.text, "lxml")
    print(soup.prettify())

В ответе в блоке, который отвечает за размеры нет никаких данных, а именно нет текста с размерами.


Следующий вопрос - где искать ссылки на товары определенного размера. Я понял, что после url товара добавляется параметр skuID (пример: https://www.sportmaster.ru/product/26194560299/?skuId=52981960299)
Чтобы получить этот ID отправляю следующий запрос (посмотрел, что такой запрос отправляется при нажатии):

response = requests.get('https://www.sportmaster.ru/ga-api/v1/product-view/26194560299/', cookies=cookies, headers=headers)
    print(response.status_code)
    print(response.text)

Получаю ответ, в котором содержится только ID первого размера, при этом не важно, есть он в наличии или нет, который хранится в "productSku":

{"productId":"26194560299","productName":"Футболка мужская adidas Essentials FeelVivid","productPrice":4399.0,"productSalePrice":4399.0,"productSku":"52981960299","productPriceType":"NORMAL","productColor":"серый","productType":"Одежда","productCategory":"Спорт","productSubcategory":"Спортивный стиль","productSport":["Спортивный стиль"],"productGroup":"Футболки","productSubgroup":"Футболки с коротким рукавом","productAge":"Взрослые","productGender":"Мужской","productBrand":"adidas","availability":{"delivery":1,"deliveryExpress":0,"pickup":0,"pickupLater":1,"pickpoint":1}}

Ответы

Ответов пока нет.