private void btn_LIS_Groups_GetGroups_Click(object sender, RoutedEventArgs e) { try { LinkedInScraper objLinkedInScraper = new LinkedInScraper(); Thread thrThreadStartGetGroups = new Thread(objLinkedInScraper.ThreadStartGetGroups); thrThreadStartGetGroups.Start(); } catch (Exception ex) { } }
private void btn_LinkedinScraper_Start_Click(object sender, RoutedEventArgs e) { #region Settings try { if (chk_LinkedinScraper_ScraperInputs.IsChecked == true || chk_LIScraper_PremiumOption.IsChecked == true || chk_Scraper_LIScraper_Keyword_Title.IsChecked == true || chk_LinkedinScraper_Groups.IsChecked == true || chk_LIScraper_Industry_Relationship_Language.IsChecked == true || chk_LinkedinScraper_SearchByUrl.IsChecked == true) { if (chk_LinkedinScraper_ScraperInputs.IsChecked == true) { GlobalsScraper.chkScraperInput = true; } if (chk_LIScraper_PremiumOption.IsChecked == true) { GlobalsScraper.chkPremiumOptions = true; } if (chk_Scraper_LIScraper_Keyword_Title.IsChecked == true) { GlobalsScraper.chkKeyword_Title = true; } if (chk_LinkedinScraper_Groups.IsChecked == true) { GlobalsScraper.chkGroups = true; } if (chk_LIScraper_Industry_Relationship_Language.IsChecked == true) { GlobalsScraper.chkIndustry_Relationship_Language = true; } if (chk_LinkedinScraper_SearchByUrl.IsChecked == true) { GlobalsScraper.chkSearchByUrl = true; } } else { GlobusLogHelper.log.Info("Please check atleast one of the checkboxes."); MessageBox.Show("Please check atleast one of the checkboxes."); return; } if (string.IsNullOrEmpty(txt_LinkedinScraper_MinDelay.Text) && string.IsNullOrEmpty(txt_LinkedinScraper_MaxDelay.Text)) { GlobusLogHelper.log.Info("Delay field cann't be empty."); return; } else { GlobalsScraper.txtMinDelay = Convert.ToInt32(txt_LinkedinScraper_MinDelay.Text.ToString()); GlobalsScraper.txtMaxDelay = Convert.ToInt32(txt_LinkedinScraper_MaxDelay.Text.ToString()); } } catch (Exception ex) { } #endregion try { Scraper.LinkedInScraper objLinkedInScraper = new LinkedInScraper(); Thread thrStartLinkedInScraper = new Thread(objLinkedInScraper.ThreadStartLinkedInScraper); thrStartLinkedInScraper.Start(); } catch (Exception ex) { } }
private void GetEmployeeDataFromCompanyURL(ref GlobusHttpHelper HttpHelper, List <string> lstCompanyUrls) { try { if (!GlobalsScraper.isSearchByCompanyNamesToGetEmailId) { foreach (string item in lstCompanyUrls) { try { GlobusLogHelper.log.Info("[ " + DateTime.Now + " ] => [ Starting Parsing With UserName : "******" ]"); //Log("Url >>> " + item); string compCode = Regex.Split(item, "company/")[1]; compCode = compCode.Split('?')[0]; string EmployeeUrl = "https://www.linkedin.com/vsearch/p?keywords=" + SearchCriteria.Keyword + "&openAdvancedForm=true&locationType=" + SearchCriteria.Country + "&countryCode=" + SearchCriteria.Country + "&f_CC=" + compCode + "&rsid=&orig=ADVS"; string LinkPagesourceCompEmp = HttpHelper.getHtmlfromUrl1(new Uri(EmployeeUrl)); try { int pagenumber = 0; string strPageNumber = string.Empty; string[] Arr12 = Regex.Split(LinkPagesourceCompEmp, "<p class=\"summary\">"); if (Arr12.Count() == 1) { Arr12 = Regex.Split(LinkPagesourceCompEmp, "formattedResultCount"); } foreach (string item1 in Arr12) { try { if (!item1.Contains("<!DOCTYPE")) { if (item1.Contains("<strong>")) { try { //":"15,439","i18n_survey_feedback_thanks": string pageNO = Regex.Split(item1, "i18n_survey")[0].Replace(":", string.Empty).Replace(",", string.Empty).Replace("\"", string.Empty); string[] arrPageNO = Regex.Split(pageNO, "[^0-9]"); foreach (string item2 in arrPageNO) { try { if (!string.IsNullOrEmpty(item2)) { strPageNumber = item2; } } catch { } } } catch { } } } } catch { } } try { strPageNumber = strPageNumber.Replace(".", string.Empty); if (strPageNumber != string.Empty || strPageNumber == "0") { GlobusLogHelper.log.Info("[ " + DateTime.Now + " ] => [ Total Results found: " + strPageNumber + " ]"); } pagenumber = int.Parse(strPageNumber); } catch (Exception) { } pagenumber = (pagenumber / 10) + 1; LinkedInScraper obj_LinkedInScraper = new LinkedInScraper(); EmployeeUrl = EmployeeUrl + "##CompanyEmployeeScraper"; obj_LinkedInScraper.StartCompanyEmployeeScraperWithPagination(ref HttpHelper, EmployeeUrl, pagenumber); } catch { } } catch { } } } #region for kishore's requirement if (GlobalsScraper.isSearchByCompanyNamesToGetEmailId) { foreach (string item in lstCompanyUrls) { try { string compCode = ""; GlobusLogHelper.log.Info("[ " + DateTime.Now + " ] => [ Starting Parsing With UserName : "******" ]"); // string compCode = Regex.Split(item, "company/")[1]; // compCode = compCode.Split('?')[0]; string compName = item.Replace(" ", "+"); string CompUrl = "https://www.linkedin.com/vsearch/c?type=companies&keywords=" + compName; string source = HttpHelper.getHtmlfromUrl1(new Uri(CompUrl)); string[] arr = Regex.Split(source, "fmt_industry"); string url = ""; if (arr.Length > 1) { url = Utils.getBetween(arr[1], "link_biz_overview_", "\",\""); url = Utils.getBetween(url + "###", "\":\"/", "###"); compCode = Utils.getBetween(url, "company/", "?"); } url = "https://www.linkedin.com/" + url; source = HttpHelper.getHtmlfromUrl1(new Uri(url)); string EmployeeUrl = "https://www.linkedin.com/vsearch/p?keywords=" + SearchCriteria.Keyword + "&openAdvancedForm=true&locationType=" + SearchCriteria.Country + "&countryCode=" + SearchCriteria.Country + "&f_CC=" + compCode + "&rsid=&orig=ADVS"; string LinkPagesourceCompEmp = HttpHelper.getHtmlfromUrl1(new Uri(EmployeeUrl)); try { int pagenumber = 0; string strPageNumber = string.Empty; string[] Arr12 = Regex.Split(LinkPagesourceCompEmp, "<p class=\"summary\">"); if (Arr12.Count() == 1) { Arr12 = Regex.Split(LinkPagesourceCompEmp, "formattedResultCount"); } foreach (string item1 in Arr12) { try { if (!item1.Contains("<!DOCTYPE")) { if (item1.Contains("<strong>")) { try { //":"15,439","i18n_survey_feedback_thanks": string pageNO = Regex.Split(item1, "i18n_survey")[0].Replace(":", string.Empty).Replace(",", string.Empty).Replace("\"", string.Empty); string[] arrPageNO = Regex.Split(pageNO, "[^0-9]"); foreach (string item2 in arrPageNO) { try { if (!string.IsNullOrEmpty(item2)) { strPageNumber = item2; } } catch { } } } catch { } } } } catch { } } try { strPageNumber = strPageNumber.Replace(".", string.Empty); if (strPageNumber != string.Empty || strPageNumber == "0") { GlobusLogHelper.log.Info("[ " + DateTime.Now + " ] => [ Total Results found: " + strPageNumber + " ]"); } pagenumber = int.Parse(strPageNumber); } catch (Exception) { } pagenumber = (pagenumber / 10) + 1; LinkedInScraper obj_LinkedInScraper = new LinkedInScraper(); EmployeeUrl = EmployeeUrl + "##CompanyEmployeeScraper"; obj_LinkedInScraper.StartCompanyEmployeeScraperWithPagination(ref HttpHelper, EmployeeUrl, pagenumber); } catch { } } catch { } } } #endregion } catch { } }
private void btn_LIS_Groups_GetGroups_Click(object sender, RoutedEventArgs e) { try { LinkedInScraper objLinkedInScraper = new LinkedInScraper(); Thread thrThreadStartGetGroups = new Thread(objLinkedInScraper.ThreadStartGetGroups); thrThreadStartGetGroups.Start(); } catch (Exception ex) { } }
private void btn_LinkedinScraper_Start_Click(object sender, RoutedEventArgs e) { #region Settings try { if (chk_LinkedinScraper_ScraperInputs.IsChecked == true || chk_LIScraper_PremiumOption.IsChecked == true || chk_Scraper_LIScraper_Keyword_Title.IsChecked == true || chk_LinkedinScraper_Groups.IsChecked == true || chk_LIScraper_Industry_Relationship_Language.IsChecked == true || chk_LinkedinScraper_SearchByUrl.IsChecked == true) { if (chk_LinkedinScraper_ScraperInputs.IsChecked == true) GlobalsScraper.chkScraperInput = true; if (chk_LIScraper_PremiumOption.IsChecked == true) GlobalsScraper.chkPremiumOptions = true; if (chk_Scraper_LIScraper_Keyword_Title.IsChecked == true) GlobalsScraper.chkKeyword_Title = true; if (chk_LinkedinScraper_Groups.IsChecked == true) GlobalsScraper.chkGroups = true; if (chk_LIScraper_Industry_Relationship_Language.IsChecked == true) GlobalsScraper.chkIndustry_Relationship_Language = true; if (chk_LinkedinScraper_SearchByUrl.IsChecked == true) GlobalsScraper.chkSearchByUrl = true; } else { GlobusLogHelper.log.Info("Please check atleast one of the checkboxes."); MessageBox.Show("Please check atleast one of the checkboxes."); return; } if (string.IsNullOrEmpty(txt_LinkedinScraper_MinDelay.Text) && string.IsNullOrEmpty(txt_LinkedinScraper_MaxDelay.Text)) { GlobusLogHelper.log.Info("Delay field cann't be empty."); return; } else { GlobalsScraper.txtMinDelay = Convert.ToInt32(txt_LinkedinScraper_MinDelay.Text.ToString()); GlobalsScraper.txtMaxDelay = Convert.ToInt32(txt_LinkedinScraper_MaxDelay.Text.ToString()); } } catch (Exception ex) { } #endregion try { Scraper.LinkedInScraper objLinkedInScraper = new LinkedInScraper(); Thread thrStartLinkedInScraper = new Thread(objLinkedInScraper.ThreadStartLinkedInScraper); thrStartLinkedInScraper.Start(); } catch (Exception ex) { } }
private void GetEmployeeDataFromCompanyURL(ref GlobusHttpHelper HttpHelper, List<string> lstCompanyUrls) { try { if (!GlobalsScraper.isSearchByCompanyNamesToGetEmailId) { foreach (string item in lstCompanyUrls) { try { GlobusLogHelper.log.Info("[ " + DateTime.Now + " ] => [ Starting Parsing With UserName : "******" ]"); //Log("Url >>> " + item); string compCode = Regex.Split(item, "company/")[1]; compCode = compCode.Split('?')[0]; string EmployeeUrl = "https://www.linkedin.com/vsearch/p?keywords=" + SearchCriteria.Keyword + "&openAdvancedForm=true&locationType=" + SearchCriteria.Country + "&countryCode=" + SearchCriteria.Country + "&f_CC=" + compCode + "&rsid=&orig=ADVS"; string LinkPagesourceCompEmp = HttpHelper.getHtmlfromUrl1(new Uri(EmployeeUrl)); try { int pagenumber = 0; string strPageNumber = string.Empty; string[] Arr12 = Regex.Split(LinkPagesourceCompEmp, "<p class=\"summary\">"); if (Arr12.Count() == 1) { Arr12 = Regex.Split(LinkPagesourceCompEmp, "formattedResultCount"); } foreach (string item1 in Arr12) { try { if (!item1.Contains("<!DOCTYPE")) { if (item1.Contains("<strong>")) { try { //":"15,439","i18n_survey_feedback_thanks": string pageNO = Regex.Split(item1, "i18n_survey")[0].Replace(":", string.Empty).Replace(",", string.Empty).Replace("\"", string.Empty); string[] arrPageNO = Regex.Split(pageNO, "[^0-9]"); foreach (string item2 in arrPageNO) { try { if (!string.IsNullOrEmpty(item2)) { strPageNumber = item2; } } catch { } } } catch { } } } } catch { } } try { strPageNumber = strPageNumber.Replace(".", string.Empty); if (strPageNumber != string.Empty || strPageNumber == "0") { GlobusLogHelper.log.Info("[ " + DateTime.Now + " ] => [ Total Results found: " + strPageNumber + " ]"); } pagenumber = int.Parse(strPageNumber); } catch (Exception) { } pagenumber = (pagenumber / 10) + 1; LinkedInScraper obj_LinkedInScraper = new LinkedInScraper(); EmployeeUrl = EmployeeUrl + "##CompanyEmployeeScraper"; obj_LinkedInScraper.StartCompanyEmployeeScraperWithPagination(ref HttpHelper, EmployeeUrl, pagenumber); } catch { } } catch { } } } #region for kishore's requirement if (GlobalsScraper.isSearchByCompanyNamesToGetEmailId) { foreach (string item in lstCompanyUrls) { try { string compCode = ""; GlobusLogHelper.log.Info("[ " + DateTime.Now + " ] => [ Starting Parsing With UserName : "******" ]"); // string compCode = Regex.Split(item, "company/")[1]; // compCode = compCode.Split('?')[0]; string compName = item.Replace(" ", "+"); string CompUrl = "https://www.linkedin.com/vsearch/c?type=companies&keywords=" + compName; string source = HttpHelper.getHtmlfromUrl1(new Uri(CompUrl)); string[] arr = Regex.Split(source, "fmt_industry"); string url = ""; if (arr.Length > 1) { url = Utils.getBetween(arr[1], "link_biz_overview_", "\",\""); url = Utils.getBetween(url + "###", "\":\"/", "###"); compCode = Utils.getBetween(url, "company/", "?"); } url = "https://www.linkedin.com/" + url; source = HttpHelper.getHtmlfromUrl1(new Uri(url)); string EmployeeUrl = "https://www.linkedin.com/vsearch/p?keywords=" + SearchCriteria.Keyword + "&openAdvancedForm=true&locationType=" + SearchCriteria.Country + "&countryCode=" + SearchCriteria.Country + "&f_CC=" + compCode + "&rsid=&orig=ADVS"; string LinkPagesourceCompEmp = HttpHelper.getHtmlfromUrl1(new Uri(EmployeeUrl)); try { int pagenumber = 0; string strPageNumber = string.Empty; string[] Arr12 = Regex.Split(LinkPagesourceCompEmp, "<p class=\"summary\">"); if (Arr12.Count() == 1) { Arr12 = Regex.Split(LinkPagesourceCompEmp, "formattedResultCount"); } foreach (string item1 in Arr12) { try { if (!item1.Contains("<!DOCTYPE")) { if (item1.Contains("<strong>")) { try { //":"15,439","i18n_survey_feedback_thanks": string pageNO = Regex.Split(item1, "i18n_survey")[0].Replace(":", string.Empty).Replace(",", string.Empty).Replace("\"", string.Empty); string[] arrPageNO = Regex.Split(pageNO, "[^0-9]"); foreach (string item2 in arrPageNO) { try { if (!string.IsNullOrEmpty(item2)) { strPageNumber = item2; } } catch { } } } catch { } } } } catch { } } try { strPageNumber = strPageNumber.Replace(".", string.Empty); if (strPageNumber != string.Empty || strPageNumber == "0") { GlobusLogHelper.log.Info("[ " + DateTime.Now + " ] => [ Total Results found: " + strPageNumber + " ]"); } pagenumber = int.Parse(strPageNumber); } catch (Exception) { } pagenumber = (pagenumber / 10) + 1; LinkedInScraper obj_LinkedInScraper = new LinkedInScraper(); EmployeeUrl = EmployeeUrl + "##CompanyEmployeeScraper"; obj_LinkedInScraper.StartCompanyEmployeeScraperWithPagination(ref HttpHelper, EmployeeUrl, pagenumber); } catch { } } catch { } } } #endregion } catch { } }