public ActionResult Edit(KundeEditModel model) { using (var rs = new RequestScope(this)) { var kunde = rs.DC.Kunders.Single(k => k.Kunde_GUID == model.Id); kunde.IsSupportSiteEnabled = model.IsSupportSiteEnabled; var standardInvoiceTypeId = model.StandardFakturaTypeId != Guid.Empty ? model.StandardFakturaTypeId : new Guid?(); if (kunde.KundeExtensions.Any() == false) { kunde.KundeExtensions.Add(new KundeExtension() { DefaultInvoiceTypeId = standardInvoiceTypeId }); } else { kunde.KundeExtensions.Single().DefaultInvoiceTypeId = standardInvoiceTypeId; } rs.DC.SaveChanges(); // Reindexer kunder var sm = new ElasticSearchManager(Properties.Settings.Default.ElasticSearchUrl); sm.IndexCustomer(kunde.Kunde_GUID); var kundeEditModel = BuildEditModel(kunde, rs); return View(kundeEditModel); } }
public Loader() { string address = ConfigurationManager.AppSettings["ElasticURL"]; string username = ConfigurationManager.AppSettings["ElasticUsername"]; string password = SimpleCryptoManager.Instance.Decrypt(ConfigurationManager.AppSettings["ElasticPassword"]); elasticSerchManager = new ElasticSearchManager(address, username, password); }
public void Start() { List <string> listpageUrls = new List <string>(); listpageUrls.AddRange(new[] { "https://www.zingat.com/satilik-daire", "https://www.zingat.com/satilik-isyeri", "https://www.zingat.com/satilik-arsa", "https://www.zingat.com/satilik-yazlik", "https://www.zingat.com/satilik-villa", "https://www.zingat.com/satilik-dukkan-magaza", "https://www.zingat.com/kiralik-daire", "https://www.zingat.com/kiralik-isyeri", "https://www.zingat.com/kiralik-arsa", "https://www.zingat.com/kiralik-yazlik", "https://www.zingat.com/kiralik-villa", "https://www.zingat.com/kiralik-dukkan-magaza", "https://www.zingat.com/gunluk-kiralik-daire", "https://www.zingat.com/gunluk-kiralik-rezidans", "https://www.zingat.com/gunluk-kiralik-villa" }); foreach (var listpageUrl in listpageUrls) { for (int i = 1; i <= 1; i++) { try { GetListPageUrl(listpageUrl + "?page=" + i.ToString()); Thread.Sleep(TimeSpan.FromSeconds(3)); //break; } catch (Exception e) { Console.WriteLine(e); } } //break; } foreach (var item in DetailPageUrlList) { try { ElasticSearchManager elasticSearchManager = new ElasticSearchManager(); if (!elasticSearchManager.AnyBySiteUrl <ScrapingModelData>(new ScrapingModelData(), "scrapingmodeldata", item)) { GetDetailPageUrl(item); Thread.Sleep(TimeSpan.FromSeconds(3)); } } catch (Exception e) { Console.WriteLine(e); } } }
public IActionResult SaveXpath(IFormCollection form) { var keyValues = new SortedList <string, string>(); foreach (var contain in form) { try { if (contain.Key.Contains("cmb")) { keyValues.Add(contain.Value, form[contain.Key.Replace("cmb", "chck")]); } } catch (Exception ex) { } } var list = typeof(ScrapingXpath).GetProperties().Select(s => new { p = s, a = s.GetCustomAttributes(typeof(DisplayAttribute)).First() }).ToList() .Select(c => new { c.p, n = ((DisplayAttribute)c.a).Name }).ToList(); var model = new ScrapingXpath(); foreach (var item in list) { if (keyValues.ContainsKey(item.n)) { item.p.SetValue(model, keyValues[item.n]); } } model.SiteUrl = form["SiteUrl"]; model.Id = Guid.NewGuid().ToString(); ElasticSearchManager elasticSearchManager = new ElasticSearchManager(); elasticSearchManager.Save(model, "scrapingxpath"); return(null); }
protected IElasticSearchManager CreateManager() { IElasticSearchManager manager = new ElasticSearchManager(GetConfig()); return(manager); }
public WindownApplication() { ViewerID = getString("Viewer_ID", ""); webClientManager = WebClientManager.getInstance(); ObjCacheManager = new ObjCacheManager(this); elasticSearchManager = new ElasticSearchManager(); RailDao = new RAILDao(); AddressDao = new ADDRESSDao(); PortIconDao = new PortIconDao(); PointDao = new POINTDao(); GroupRailDao = new GROUPRAILSDao(); SegmentDao = new SegmentDao(); SectionDao = new SectionDao(); PortDao = new PortDao(); VehicleDao = new VehicleDao(); UserDao = new UserDao(); UserGroupDao = new UserGroupDao(); UserFuncDao = new UserFuncDao(); FunctionCodeDao = new FunctionCodeDao(); CMD_OHTCDao = new CMD_OHTCDao(); CMD_MCSDao = new CMD_MCSDao(); VCMD_MCSDao = new VCMD_MCSDao(); PortStationDao = new PortStationDao(); AlarmDao = new AlarmDao(); MapBLL = new MapBLL(this); UserBLL = new UserBLL(this); OperationHistoryBLL = new OperationHistoryBLL(this); CmdBLL = new CmdBLL(this); AlarmBLL = new AlarmBLL(this); PortStationBLL = new PortStationBLL(this); SegmentBLL = new SegmentBLL(this); ObjCacheManager.start(); ID = ObjCacheManager.MapId; LineBLL = new LineBLL(this); VehicleBLL = new VehicleBLL(this); SysExcuteQualityBLL = new SysExcuteQualityBLL(this); dBTableWatcher = new EventAction.DBTableWatcher(this); dBTableWatcher.initStart(); // setEFConnectionString(ObjCacheManager.EFConnectionString); SysExcuteQualityQueryService = new SysExcuteQualityQueryService(this); //initBackgroundWork(); // SysExcuteQualityQueryService = new SysExcuteQualityQueryService(); switch (WindownApplication.OHxCFormMode) { case OHxCFormMode.CurrentPlayer: natsManager = new NatsManager(ID, "nats-cluster", ViewerID); redisCacheManager = new RedisCacheManager(ID); SubscriberNatsEvent(); SubscriberDBTableWatcherEvent(); //SysExcuteQualityQueryService.start(); break; case OHxCFormMode.HistoricalPlayer: HistoricalReplyService = new HistoricalReplyService(this); //HistoricalReplyService.loadVhHistoricalInfo(); break; } //VehicleBLL.ReguestViewerUpdate(); }
private void GetDetailPageUrl(string pageUrl) { Console.WriteLine(pageUrl); ChromeOptions chromeOptions = new ChromeOptions(); chromeOptions.AddArgument("--headless"); chromeOptions.AddArgument("--no-sandbox"); chromeOptions.AddArgument("--disable-dev-shm-usage"); chromeOptions.AddArgument("--ignore-certificate-errors"); ScrapingModelData data = new ScrapingModelData(); var gg = ""; //using (var driver = new ChromeDriver(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location))) using (var driver = new ChromeDriver("/bin", chromeOptions, TimeSpan.FromMinutes(1))) { driver.Navigate().GoToUrl(pageUrl); gg = driver.PageSource; var doc = new HtmlDocument(); doc.LoadHtml(gg); data.SiteUrl = pageUrl; data.Title = doc.DocumentNode.SelectSingleNode("//*[@id='details']/div/div[4]/div/div/div/div/h1").InnerText.Trim(); data.Price = doc.DocumentNode.SelectSingleNode("//*[@id='details']/div/div[4]/div/div/div/div[2]/strong[2]").InnerText.Trim(); data.Adres = doc.DocumentNode.SelectSingleNode("//*[@id='details']/div/div[4]/div/div/div/div/div/h2").InnerText.Trim(); data.Owner = doc.DocumentNode.SelectSingleNode("//*[@id='details']/div/div[5]/div/div[2]/div/div/div/a").InnerText.Trim(); data.Firm = doc.DocumentNode.SelectSingleNode("//*[@id='details']/div/div[5]/div/div[2]/div/div/div/a[2]").InnerText.Trim(); data.Phone = string.Join(';', doc.DocumentNode.SelectNodes("//*[@class='contact-number-area number-area']/a").Select(x => x.Attributes["href"].Value)); data.Property = doc.DocumentNode.SelectSingleNode("//*[@id='details']/div/div[5]/div/div/div[2]/div/div[2]").InnerHtml.Trim(); foreach (var selectNode in doc.DocumentNode.SelectNodes("//*[@id='details']/div/div[5]/div/div/div[2]/div/div[2]/ul/li")) { try { var tt = $"{selectNode.SelectSingleNode("./strong").InnerText.Trim()}:{selectNode.SelectSingleNode("./span").InnerText.Trim()},"; data.Propertystr += tt; } catch { } } data.Description = doc.DocumentNode.SelectSingleNode("//*[@id='detailDescription']/div/p").InnerText.Trim(); data.Feature = doc.DocumentNode.SelectSingleNode("//*[@id='otherFacilities']/div").InnerHtml.Trim(); foreach (var selectNode in doc.DocumentNode.SelectNodes("//*[@id='otherFacilities']/div/div/div")) { try { string tt = ""; if (selectNode.Attributes["class"].Value.Contains("passive")) { data.Featurestr += $"passive:{selectNode.InnerText.Trim()},"; } else { data.Featurestr += $"active:{selectNode.InnerText.Trim()},"; } } catch (Exception e) { } } data.Category = doc.DocumentNode.SelectSingleNode("//*[@id='breadcrumbContainer']/div/div/ol").InnerHtml.Trim(); data.Categorystr = doc.DocumentNode.SelectSingleNode("//*[@id='breadcrumbContainer']/div/div/ol").InnerText.Trim(); data.Picture = string.Join(',', doc.DocumentNode.SelectNodes("//div[@class='gallery-container']/a[@class='gallery-item zoon-in-image']").Select(x => x.Attributes["data-lg"].Value)); data.IsTransfer = false; var lot = doc.DocumentNode.SelectSingleNode("//*[@data-locationapi='/api/locationReport']").Attributes["data-id"].Value; driver.Navigate().GoToUrl("https://www.zingat.com/api/locationReport?type=all&locId=" + lot); gg = driver.PageSource; doc.LoadHtml(gg); data.Column1 = doc.DocumentNode.InnerText; } ElasticSearchManager elasticSearchManager = new ElasticSearchManager(); elasticSearchManager.Save(data, "scrapingmodeldata"); }