private YandexPage GetResultPage(QueryElement query, IWebDriver driver, RegionElement region) { //var driver = WebDriverProvider.GetWebDriver(); var yaPage = new YandexPage(driver, query, region); //driver.Close(); return(yaPage); }
private ReportRow GetRow(YandexPage yandexPage, List <CompanyAdverisment> companies) { return(new ReportRow() { QueryName = yandexPage.Query, Frequency = yandexPage.Frequency, QueryGroup = yandexPage.QueryGroup, AdvertismentCount = yandexPage.AdvertisementResultItems.Count, Companies = companies.Where(_ => _.Advertisments.ContainsKey(yandexPage.Query)).ToList() }); }
private string GetRow(YandexPage yaPage, CompanyAdverisment company, int rowNum) { var result = _htmlRowTemplate.ToString(); ReplaceMarker(ref result, "RowNum", rowNum.ToString()); ReplaceMarker(ref result, "QueryText", yaPage.Query); ReplaceMarker(ref result, "Region", _region != null ? _region.Region : ""); ReplaceMarker(ref result, "Frequency", yaPage.Frequency); ReplaceMarker(ref result, "CompanyName", company.CompanyName); var adv = company.Advertisments.ContainsKey(yaPage.Query) ? company.Advertisments[yaPage.Query] : null; if (adv != null) { ReplaceMarker(ref result, "TitleLink", adv.TitleLink); ReplaceMarker(ref result, "TitleLinkLength", adv.TitleLinkWithoutCompanyUrl.Length.ToString()); ReplaceMarker(ref result, "TextAdvertisment", adv.TextAdvertisment); ReplaceMarker(ref result, "TextAdvertismentLength", adv.TextAdvertisment.Length.ToString()); for (int i = 0; i < 4; i++) { var isLinkExists = adv.FastLinks.Count > i; var linknum = i + 1; ReplaceMarker(ref result, "FastLink" + linknum, isLinkExists ? adv.FastLinks[i] : ""); ReplaceMarker(ref result, "FastLinkLength" + linknum, isLinkExists ? adv.FastLinks[i].Length.ToString() : ""); } ReplaceMarker(ref result, "FastLinkTotal", adv.FastLinks.Sum(_ => _.Length).ToString()); var graySpecifications = string.Join(" | ", adv.GraySpecifications.ToArray()); var graySpecificationsLengths = string.Join(" | ", adv.GraySpecifications.Select(s => s.Length).ToArray()); var graySpecificationsTotal = adv.GraySpecifications.Sum(_ => _.Length); ReplaceMarker(ref result, "GraySpecifications", graySpecifications); ReplaceMarker(ref result, "GraySpecificationsLengths", graySpecificationsLengths); ReplaceMarker(ref result, "GraySpecificationsTotal", graySpecificationsTotal.ToString()); ReplaceMarker(ref result, "YandexBuisenessCard", adv.YandexBuisenessCard ? "Да" : "Нет"); ReplaceMarker(ref result, "GreenUrl", adv.GreenUrl ? "Да(" + adv.TitleUrl + ")" : "Нет"); ReplaceMarker(ref result, "IsUtm", adv.IsUtm); ReplaceMarker(ref result, "YandexMarket", adv.YandexMarket); } else { ReplaceMarker(ref result, "TitleLink", ""); ReplaceMarker(ref result, "TitleLinkLength", ""); ReplaceMarker(ref result, "TextAdvertisment", ""); ReplaceMarker(ref result, "TextAdvertismentLength", ""); for (int i = 0; i < 4; i++) { var linknum = i + 1; ReplaceMarker(ref result, "FastLink" + linknum, ""); ReplaceMarker(ref result, "FastLinkLength" + linknum, ""); } ReplaceMarker(ref result, "FastLinkTotal", ""); ReplaceMarker(ref result, "GraySpecifications", ""); ReplaceMarker(ref result, "GraySpecificationsLengths", ""); ReplaceMarker(ref result, "GraySpecificationsTotal", ""); ReplaceMarker(ref result, "YandexBuisenessCard", ""); ReplaceMarker(ref result, "GreenUrl", ""); ReplaceMarker(ref result, "IsUtm", ""); ReplaceMarker(ref result, "YandexMarket", ""); } return(result); }
public void Test2() { var page = new YandexPage(browser); page.SearchDiv.SearchField.InsertText("кошка"); }
private string GetRow(YandexPage yaPage, CompanyAdverisment company, int rowNum) { var sb = new StringBuilder(); sb.AppendLine("<tr class='green'>"); sb.AppendFormat("<td>{0}</td>", rowNum); sb.AppendFormat("<td>{0}</td>", yaPage.Query); sb.AppendFormat("<td>{0}</td>", ""); sb.AppendFormat("<td>{0}</td>", yaPage.Frequency); sb.AppendFormat("<td>{0}</td>", company.CompanyName); sb.AppendLine("</tr>"); //colspan="3"> var adv = company.Advertisments.ContainsKey(yaPage.Query) ? company.Advertisments[yaPage.Query] : null; if (adv != null) { sb.AppendFormat("<tr><td colspan='5' class='bold'>Объявления</td></tr>"); sb.AppendFormat("<tr><td colspan='4'>{0}</td><td colspan='1'>{1}</td></tr>", adv.TitleLink, adv.TitleLink.Length); sb.AppendFormat("<tr><td colspan='4'>{0}</td><td colspan='1'>{1}</td></tr>", adv.TextAdvertisment, adv.TextAdvertisment.Length); sb.AppendFormat("<tr><td colspan='5' class='bold'>Быстрые ссылки. С1(30). Всего(66)</td></tr>"); if (adv.FastLinks.Count == 0) { sb.AppendFormat("<tr><td colspan='5'>Быстрых ссылок нет</td></tr>"); } else { foreach (var fastLink in adv.FastLinks) { sb.AppendFormat("<tr><td colspan='4'>{0}</td><td colspan='1'>{1}</td></tr>", fastLink, fastLink.Length); } sb.AppendFormat("<tr><td colspan='4'>Всего(66)</td><td colspan='1'>{0}</td></tr>", adv.FastLinks.Sum(_ => _.Length)); } sb.AppendFormat("<tr><td colspan='5' class='bold'>Уточнения. У1(25). Всего(66)</td></tr>"); if (adv.GraySpecifications.Count == 0) { sb.AppendFormat("<tr><td colspan='5'>уточнений нет</td></tr>"); } else { foreach (var spec in adv.GraySpecifications) { sb.AppendFormat("<tr><td colspan='4'>{0}</td><td colspan='1'>{1}</td></tr>", spec, spec.Length); } sb.AppendFormat("<tr><td colspan='4'>Всего(66)</td><td colspan='1'>{0}</td></tr>", adv.GraySpecifications.Sum(_ => _.Length)); } sb.AppendFormat("<tr><td colspan='4'>Наличие Яндекс визитки</td><td colspan='1'>{0}</td></tr>", adv.YandexBuisenessCard ? "Да" : "Нет"); sb.AppendFormat("<tr><td colspan='4'>Наличие отображаемой ссылки</td><td colspan='1'>{0}</td></tr>", adv.GreenUrl ? "Да(" + adv.TitleUrl + ")" : "Нет"); sb.AppendFormat("<tr><td colspan='4'>Наличие отображаемой ссылки</td><td colspan='1'>{0}</td></tr>", adv.GreenUrl ? "Да(" + adv.TitleUrl + ")" : "Нет"); sb.AppendFormat("<tr><td colspan='4'>Наличие yclid и utm</td><td colspan='1'>{0}</td></tr>", adv.IsUtm); sb.AppendFormat("<tr><td colspan='4'>YandexMarket</td><td colspan='1'>{0}</td></tr>", adv.YandexMarket); } else { sb.AppendFormat("<tr><td colspan='5' class='bold'>Предложений нет</td></tr>"); } return(sb.ToString()); }