Получение корзины Steam

Пришел с таким вопросом. Мне нужно получить корзину стима, но при переходе на https://store.steampowered.com/cart у меня ничего не отображается, хотя в корзине есть товары. Вот пример кода, который использую

private async Task GetCart(IEnumerable<Cookie> cookies)
    {
        var cartUrl = "https://store.steampowered.com/cart";

        var cookieContainer = new CookieContainer();
        var handler = new HttpClientHandler() { CookieContainer = cookieContainer};
        handler.UseCookies = true;

        using (var client = new HttpClient(handler))
        {

            foreach (var cookie in cookies)
            {
                cookieContainer.Add(new Uri(cartUrl), cookie);
            }

            
            var response = await client.GetAsync(cartUrl);

            var s = await response.Content.ReadAsStringAsync();

            Console.WriteLine("Запрос прошел успешно!");
        }

    }

в s складываю полученый html документ. По идее, все куки собираю и отправляю с запросом. Пробовал в Postman - e прокинуть такой запрос - результат один и тот-же. Куки все указывал при запросе. Он показывает, что за пользователь и счет


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

Автор решения: Dr. Deckto

Хочу выразить благодарность EvgeniyZ, что показал, в каком направлении копать. Смотрите, те, кто тоже столкнулся с такой проблемой, есть библиотека Selenium WebDriver. Она эмулирует работу браузера и дожидается полной загрузки страницы.Вот, как выглядит

private async Task GetCart(IEnumerable<System.Net.Cookie> cookies)
    {
        var chromeOptions = new ChromeOptions();
        chromeOptions.AddArgument("--headless"); // Опционально: запуск браузера в фоновом режиме
        using (var driver = new ChromeDriver(chromeOptions))
        {
            var cartUrl = "https://store.steampowered.com/cart";

            driver.Navigate().GoToUrl("https://store.steampowered.com");

            // Добавление cookies
            foreach (var cookie in cookies)
            {
                driver.Manage().Cookies.AddCookie(new OpenQA.Selenium.Cookie(cookie.Name, cookie.Value));
            }

            driver.Navigate().GoToUrl(cartUrl);

            var pageSource = driver.PageSource;

            Console.WriteLine("Запрос прошел успешно!");
        }
    }

в pageSource вернулась полностью прогруженная страница

→ Ссылка