diff options
author | Sergey Chebotar <s.chebotar@gmail.com> | 2021-11-29 15:52:35 +0300 |
---|---|---|
committer | Sergey Chebotar <s.chebotar@gmail.com> | 2021-11-29 15:52:35 +0300 |
commit | 198e5c886f0e32b953e8a8bb25c087e035093604 (patch) | |
tree | b40ec69f1b28410aa06fcc70c86c7187cd92787c /Assistant | |
parent | 3eb118d6db672eb8e27f2b2478b0688141782654 (diff) |
AngleSharp add
Diffstat (limited to 'Assistant')
-rw-r--r-- | Assistant/SkuAssist.cs | 67 |
1 files changed, 33 insertions, 34 deletions
diff --git a/Assistant/SkuAssist.cs b/Assistant/SkuAssist.cs index d390a1d..a9de2e1 100644 --- a/Assistant/SkuAssist.cs +++ b/Assistant/SkuAssist.cs @@ -1,41 +1,40 @@ -//using System; -//using AngleSharp; -//using AngleSharp.Dom; -//using System.Linq; -//using System.Net; -//using System.Net.Http; -//using System.Threading.Tasks; +using AngleSharp; +using AngleSharp.Dom; +using System.Linq; +using System.Net; +using System.Net.Http; +using System.Threading.Tasks; -//namespace Rehau.Sku.Assist -//{ -// static class SkuAssist -// { -// public async static Task<string> GetContent(string request, HttpClient httpClient) -// { -// string uri = "https://shop-rehau.ru/catalogsearch/result/?q=" + request; -// ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls; +namespace Rehau.Sku.Assist +{ + static class SkuAssist + { + public async static Task<string> GetContent(string request, HttpClient httpClient) + { + string uri = "https://shop-rehau.ru/catalogsearch/result/?q=" + request; + ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls; -// return await httpClient.GetStringAsync(uri); -// } + return await httpClient.GetStringAsync(uri); + } -// public async static Task<AngleSharp.Dom.IDocument> GetDocument(string source) -// { -// IConfiguration config = Configuration.Default; -// IBrowsingContext context = BrowsingContext.New(config); + public async static Task<IDocument> GetDocument(string source) + { + IConfiguration config = Configuration.Default; + IBrowsingContext context = BrowsingContext.New(config); -// return await context.OpenAsync(req => req.Content(source)); -// } + return await context.OpenAsync(req => req.Content(source)); + } -// public static IProduct GetProductFromDocument(IDocument document) -// { -// return document -// .All -// .Where(e => e.ClassName == "product-item__desc-top") -// .Select(e => new Product(e.Children[0].TextContent, e.Children[1].TextContent.Trim(new[] { '\n', ' ' }))) -// // .Where(product => !product.Sku.Any(c => char.IsLetter(c))) -// .FirstOrDefault(); -// } -// } -//} + public static IProduct GetProductFromDocument(IDocument document) + { + return document + .All + .Where(e => e.ClassName == "product-item__desc-top") + .Select(e => new Product(e.Children[0].TextContent, e.Children[1].TextContent.Trim(new[] { '\n', ' ' }))) + // .Where(product => !product.Sku.Any(c => char.IsLetter(c))) + .FirstOrDefault(); + } + } +} |