Пример #1
0
            private async Task <IEnumerable <Product> > GetPage(string url)
            {
                var source = await url.GetStringAsync();

                var document = await HtmlHelpers.GetDocumentFromSource(source);

                var products = document.QuerySelectorAll("product-qb-component")
                               .Select(p => new PradaProduct(p))
                               .Select(p => p.AsEntity(this))
                               .ToList();

                return(products);
            }
Пример #2
0
            public async override Task <ProductMetadata> GetProductMetadataFromUrl(ChromeDriver driver, Product product)
            {
                driver.Navigate().GoToUrl(product.Link);
                var json   = driver.ExecuteScript("return JSON.stringify(window.state.pdp.detailsState.response.body.products)").ToString();
                var images = coach_bags_selenium.Outnet.OutnetProduct.FromJson(json)
                             .SelectMany(p => p.ToEntity(this).Images)
                             .ToArray();

                var html = await HtmlHelpers.GetDocumentFromSource(driver.PageSource);

                var tags = html.QuerySelectorAll("#TECHNICAL_DESCRIPTION p")
                           .Select(p => p.TextContent.Trim())
                           .ToArray();

                return(new ProductMetadata
                {
                    Images = images,
                    Tags = tags,
                });
            }