public virtual EANItem ConvertHTMLResponseStringToEANItem(string htmlresponsestring, string eanbarcode) { var htmldocument = new HtmlDocument(); var eanitem = new EANItem(); try { htmldocument.LoadHtml(htmlresponsestring); var document = htmldocument.DocumentNode; var tables = document.QuerySelectorAll("table").ToArray(); var itemtable = tables[4]; var categories = itemtable.QuerySelectorAll("td>font").ToArray(); var attributes = itemtable.QuerySelectorAll("td").ToArray(); eanitem.MainCategory = WebUtility.HtmlDecode(categories[0].InnerText.Trim()); eanitem.SubCategory = WebUtility.HtmlDecode(categories[1].InnerText.Trim()); eanitem.Name = WebUtility.HtmlDecode(attributes[5].InnerText.Trim()); eanitem.NameInDetail = WebUtility.HtmlDecode(attributes[7].InnerText.Trim()); eanitem.Description = WebUtility.HtmlDecode(attributes[9].InnerText.Trim()); eanitem.Producer = WebUtility.HtmlDecode(attributes[11].InnerText.Trim()); eanitem.Origin = WebUtility.HtmlDecode(attributes[17].InnerText.Trim()); eanitem.Validation = WebUtility.HtmlDecode(attributes[19].InnerText.Trim()); eanitem.Ingredient = WebUtility.HtmlDecode(attributes[21].InnerText.Trim()); eanitem.Packing = WebUtility.HtmlDecode(attributes[23].InnerText.Trim()); eanitem.EANBarCode = eanbarcode; } catch (Exception ex) { Debug.WriteLine(ex.Message, ex.Source); } return(eanitem); }
public virtual async Task <EANItem> FindItemByEANBarCode(string eanbarcode) { var eanitemhtml = await this.DoHttpPostRequestForEANProduct(eanbarcode); var eanitem = new EANItem(); if (!string.IsNullOrEmpty(eanitemhtml)) { eanitem = this.ConvertHTMLResponseStringToEANItem(eanitemhtml, eanbarcode); } return(eanitem); }