private void ReloadAccountsFromDataBase() { try { clsLDAccount objclsFBAccount = new clsLDAccount(); DataTable dt = objclsFBAccount.SelectAccoutsForGridView(); if (dt.Rows.Count > 0) { Globals.listAccounts.Clear(); LinkedInManager.linkedInDictionary.Clear(); ///Add LinkedIn instances to LinkedInAccountContainer.dictionary_LinkedInDictionary foreach (DataRow dRow in dt.Rows) { try { LinkedInMaster linkedin = new LinkedInMaster(); linkedin._Username = dRow[0].ToString(); linkedin._Password = dRow[1].ToString(); linkedin._ProxyUsername = dRow[2].ToString(); linkedin._ProxyPort = dRow[3].ToString(); linkedin._ProxyUsername = dRow[4].ToString(); linkedin._ProxyPassword = dRow[5].ToString(); if (!string.IsNullOrEmpty(dRow[5].ToString())) { linkedin.profileStatus = int.Parse(dRow[5].ToString()); } Globals.listAccounts.Add(linkedin._Username + ":" + linkedin._Password + ":" + linkedin._ProxyAddress + ":" + linkedin._ProxyPort + ":" + linkedin._ProxyUsername + ":" + linkedin._ProxyPassword); LinkedInManager.linkedInDictionary.Add(linkedin._Username, linkedin); } catch (Exception ex) { Console.WriteLine(ex.StackTrace); GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> ReloadAccountsFromDataBase() -- Rows From DB --> " + ex.Message + "StackTrace --> >>>" + ex.StackTrace, Globals.Path_ProxySettingErroLog); GlobusFileHelper.AppendStringToTextfileNewLine("Error --> ReloadAccountsFromDataBase() -- Rows From DB --> " + ex.Message + "StackTrace --> >>>" + ex.StackTrace, Globals.Path_LinkedinErrorLogs); } } Console.WriteLine(Globals.listAccounts.Count + " Accounts loaded"); AddLoggerGeneral("[ " + DateTime.Now + " ] => [ " + Globals.listAccounts.Count + " Accounts loaded ]"); } } catch (Exception ex) { GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> ReloadAccountsFromDataBase() --> " + ex.Message + "StackTrace --> >>>" + ex.StackTrace, Globals.Path_ProxySettingErroLog); GlobusFileHelper.AppendStringToTextfileNewLine("Error --> ReloadAccountsFromDataBase() --> " + ex.Message + "StackTrace --> >>>" + ex.StackTrace, Globals.Path_LinkedinErrorLogs); } }
public void TestConnectPageSearch(string pageNumber, int DelayStart, int DelayEnd) { int proxyport = 888; string SummaryLink = string.Empty; Regex PortCheck = new Regex("^[0-9]*$"); if (PortCheck.IsMatch(_ProxyPort) && !string.IsNullOrEmpty(_ProxyPort)) { proxyport = int.Parse(_ProxyPort); } //recive the page number and then hit page wise and find the url in which we need to send the request..... string UrlConnectpage = "http://www.linkedin.com/search/fpsearch?keywords=" + _ConnectSearchKeyword + "&keepFacets=keepFacets&page_num=" + pageNumber + "&pplSearchOrigin=ADVS&viewCriteria=2&sortCriteria=R&redir=redir"; // string PgSrcMain1 = HttpHelper.getHtmlfromUrlProxy1(new Uri(UrlConnectpage), _ProxyAddress, proxyport, _ProxyUserName, _ProxyPassword); string PgSrcMain1 = HttpHelper.getHtmlfromUrlProxy1(new Uri(UrlConnectpage), _ProxyAddress, proxyport, _ProxyUserName, _ProxyPassword); string PostData = string.Empty; string page_num = string.Empty; string postUrl = string.Empty; string facetsOrder = string.Empty; if (PgSrcMain1.Contains("facetsOrder")) { facetsOrder = PgSrcMain1.Substring(PgSrcMain1.IndexOf("facetsOrder"), 200); string[] Arr = facetsOrder.Split('"'); facetsOrder = Arr[2]; string DecodedCharTest = Uri.UnescapeDataString(facetsOrder); string DecodedEmail = Uri.EscapeDataString(facetsOrder); facetsOrder = DecodedEmail; } page_num = pageNumber; PostData = "searchLocationType=Y&inNetworkSearch=inNetworkSearch&search=&viewCriteria=2&sortCriteria=C&facetsOrder=" + facetsOrder + "&page_num=" + page_num + "&openFacets=N%2CCC%2CG"; postUrl = "http://www.linkedin.com/vsearch/p?page_num=" + page_num + "&orig=ADVS&keywords=" + _ConnectSearchKeyword + ""; //Diclaration For Post Add Connection For Keyword string Val_goback = string.Empty; string Val_sourceAlias = string.Empty; string Val_key = string.Empty; string Val_defaultText = string.Empty; string Val_firstName = string.Empty; string Val_CsrToken = string.Empty; string Val_Subject = string.Empty; string Val_greeting = string.Empty; string Val_AuthToken = string.Empty; string Val_AuthType = string.Empty; string val_trk = string.Empty; string Val_lastName = string.Empty; //Post Response string postResponse = HttpHelper.postFormDataProxy(new Uri(postUrl), PostData, _ProxyAddress, proxyport, _ProxyUserName, _ProxyPassword); // List<string> PageSerchUrl = ChilkatBasedRegex.GettingAllUrls2(postResponse, "profile/view?id"); List<string> PageSerchUrl = ChilkatBasedRegex.GettingAllUrls2(postResponse, "profile/view?id"); if (PageSerchUrl.Count == 0) { LoggerManageConnection("[--------------------------------------------------------------------------------------------------]"); LoggerManageConnection("[ " + DateTime.Now + " ] => [ No url found in 2nd degree connection in page no : " + page_num + " ]"); LoggerManageConnection("[--------------------------------------------------------------------------------------------------]"); } else { LoggerManageConnection("[--------------------------------------------------------------------------------------------------]"); LoggerManageConnection("[ " + DateTime.Now + " ] => [ " + PageSerchUrl.Count() + " url found in 2nd degree connection in page no : " + page_num + " ]"); LoggerManageConnection("[--------------------------------------------------------------------------------------------------]"); } string FrnAcceptUrL = string.Empty; foreach (string item in PageSerchUrl) { try { if (IsSheduleDaily) { if (SchedulerEndTime.Hour == DateTime.Now.Hour && DateTime.Now.Minute >= SchedulerEndTime.Minute) { _IsFollowProcessStart = true; new Thread(() => { //frm_mixcampaignmanager frmcamp = new frm_mixcampaignmanager(); //frmcamp.StoprunningCampaign(CampaignName); RaiseCampaignSearchLogEvents(campaignName); RaiseCampaignStartLogEvents(campaignName); }).Start(); LoggerManageConnection("[ " + DateTime.Now + " ] => [ Scheduled time completed ]"); break; } } FrnAcceptUrL = item; string[] tempUrl = Regex.Split(FrnAcceptUrL, "&authType"); DataSet dt = new DataSet(); try { dt = DataBaseHandler.SelectQuery("SELECT * FROM tb_SearchWithInvite Where UserName = '******' and InvitationUrl = '" + tempUrl[0] + "'", "tb_SearchWithInvite"); } catch { } int count_NO_RoWs = dt.Tables[0].Rows.Count; if (count_NO_RoWs == 0) { string FRNURLresponce = HttpHelper.getHtmlfromUrl1(new Uri(FrnAcceptUrL)); if (FRNURLresponce.Contains("/profile/view?id=")) { try { Val_key = FRNURLresponce.Substring(FRNURLresponce.IndexOf("/profile/view?id="), 30); string[] Arr = Val_key.Split('&'); Val_key = Arr[0].Replace("/profile/view?id=", ""); } catch (Exception ex) { } } if (FrnAcceptUrL.Contains("/profile/view?id=")) { try { Val_key = FrnAcceptUrL.Substring(FrnAcceptUrL.IndexOf("id="), (FrnAcceptUrL.IndexOf("&", FrnAcceptUrL.IndexOf("id=")) - FrnAcceptUrL.IndexOf("id="))).Replace("id=", string.Empty).Trim(); } catch (Exception ex) { } } if (FRNURLresponce.Contains("csrfToken")) { try { Val_CsrToken = FRNURLresponce.Substring(FRNURLresponce.IndexOf("csrfToken"), 100); string[] Arr = Val_CsrToken.Split('>'); //Val_CsrToken.Split('&'); Val_CsrToken = Arr[0].Replace("csrfToken=", "").Replace("\"", "").Trim(); } catch (Exception ex) { } } if (FRNURLresponce.Contains("authToken")) { try { // Val_AuthToken = FRNURLresponce.Substring(FRNURLresponce.IndexOf("authToken"), 50); // string[] Arr = Val_AuthToken.Split('&'); // Val_AuthToken = Arr[0].Replace("authToken=", ""); int startindex = FRNURLresponce.IndexOf("authToken"); string start = FRNURLresponce.Substring(startindex); int endindex = start.IndexOf(","); string end = start.Substring(0, endindex); Val_AuthToken = end.Replace(",", string.Empty).Replace("authToken=", string.Empty).Replace("\"", string.Empty).Trim(); if (Val_AuthToken.Contains("&")) { string[] Arr = Val_AuthToken.Split('&'); Val_AuthToken = Arr[0].Replace("authToken=", string.Empty); } if (Val_AuthToken.Contains("</noscript>")) { try { string[] Val_Auth = Regex.Split(Val_AuthToken, ">"); Val_AuthToken = Val_Auth[0].Replace("\"", string.Empty); } catch { } } // Val_AuthToken="2p6r"; } catch (Exception ex) { } } if (FRNURLresponce.Contains("authType")) { try { Val_AuthType = FRNURLresponce.Substring(FRNURLresponce.IndexOf("authType"), 50); string[] Arr = Val_AuthType.Split('&'); Val_AuthType = Arr[0].Replace("authType=", ""); if (Val_AuthType.Contains("</noscript>")) { Val_AuthType = Val_AuthType.Replace("</noscript>", string.Empty).Replace("\n", string.Empty).Replace(">", string.Empty).Replace("\\", string.Empty).Replace("\"", string.Empty).Trim(); } try { if (string.IsNullOrEmpty(Val_AuthType)) { Val_AuthType = "OUT_OF_NETWORK"; } } catch { } //authType= } catch (Exception ex) { } } if (FRNURLresponce.Contains("goback")) { try { Val_goback = FRNURLresponce.Substring(FRNURLresponce.IndexOf("goback"), 300); string[] Arr = Val_goback.Split('"'); Val_goback = Arr[0].Replace("goback=", ""); } catch (Exception ex) { } } if (FRNURLresponce.Contains("trk")) { try { val_trk = FRNURLresponce.Substring(FRNURLresponce.IndexOf("trk"), 100); string[] Arr = val_trk.Split(','); val_trk = Arr[0].Replace("trk=", "").Replace("\"", string.Empty); } catch (Exception ex) { } } if (FRNURLresponce.Contains("lastName")) { try { Val_lastName = FRNURLresponce.Substring(FRNURLresponce.IndexOf("View Profile"), 300); try { string[] Arr = Val_lastName.Split(':'); Val_lastName = Arr[2].Replace("firstName", "").Replace(",", "").Replace("\"", "").Replace("á", string.Empty).Trim(); } catch { } } catch (Exception ex) { } } if (FRNURLresponce.Contains("firstName") || FRNURLresponce.Contains("ShortTitle")) { try { if (FRNURLresponce.Contains("firstName")) { try { Val_firstName = FRNURLresponce.Substring(FRNURLresponce.IndexOf("View Profile"), 300); string[] Arr = Val_firstName.Split(':'); // Val_firstName = Arr[3].Replace("lastName=", "").Replace("i18n_HEADLINE", string.Empty).Replace("\"", "").Replace(",", string.Empty).Replace("}", string.Empty).Trim(); Val_firstName = Arr[3].Replace("lastName=", "").Replace("i18n_HEADLINE", string.Empty).Replace("\"", "").Replace(",", string.Empty).Replace("}", string.Empty).Replace("link__endpoint", "").Trim(); } catch { } } else if (FRNURLresponce.Contains("ShortTitle")) { Val_firstName = FRNURLresponce.Substring(FRNURLresponce.IndexOf("ShortTitle"), 30); string[] Arr = Val_firstName.Split('"'); Val_firstName = Arr[2].Replace("ShortTitle=", ""); } } catch (Exception ex) { } } //Frnd Requset Send Option URl //markAsReadOnClick try { string[] Valuesss = Regex.Split(FRNURLresponce, "markAsReadOnClick"); try { Val_goback = Valuesss[1].Substring(Valuesss[1].IndexOf("goback="), (Valuesss[1].IndexOf(",", Valuesss[1].IndexOf("goback=")) - Valuesss[1].IndexOf("goback="))).Replace("goback=", string.Empty).Trim(); } catch { } } catch { } // string thiredResponce = "http://www.linkedin.com/people/invite?from=profile&key=" + Val_key + "&firstName=" + Val_firstName + "&lastName=" + Val_lastName + "&authToken=" + Val_AuthToken + "&authType=" + Val_AuthType + "&goback=" + Val_goback + "&trk=prof-0-sb-connect-button"; string thiredResponce = "http://www.linkedin.com/people/invite?from=profile&key=" + Val_key + "&firstName=" + Val_firstName + "&lastName=" + Val_lastName + "&authToken=" + Val_AuthToken + "&authType=" + Val_AuthType + "&csrfToken=" + Val_CsrToken + "&goback=" + Val_goback; string pageResponce2 = HttpHelper.getHtmlfromUrl1(new Uri(thiredResponce)); if (pageResponce2.Contains("You and this LinkedIn user don’t know anyone in common")) { string CSVHeader = "UserName" + "," + "SearchKeyword" + "," + "Invitation Sent To" + "," + "InvitationUrl"; string[] url = Regex.Split(FrnAcceptUrL, "&authType"); string CSV_Content = _UserName + "," + _ConnectSearchKeyword + ", ," + url[0]; CSVUtilities.ExportDataCSVFile(CSVHeader, CSV_Content, Globals.path_ConnectionThroughUnkonwPeopleLink); LoggerManageConnection("[ " + DateTime.Now + " ] => [ Failed To Send Invitation From " + _UserName + " ]"); valid = false; Isaccountvalid = false; continue; } if (pageResponce2.Contains("sourceAlias")) { try { Val_sourceAlias = pageResponce2.Substring(pageResponce2.IndexOf("sourceAlias"), 100); string[] Arr = Val_sourceAlias.Split('"'); Val_sourceAlias = Arr[2]; } catch (Exception ex) { } } string[] strNameValue = Regex.Split(pageResponce2, "name="); #region ForspintaxMessage string msgBodyCompose = string.Empty; if (isSpinTaxSearchWithInvite) { try { msgBodyCompose = UpdatelistGreetMessatge[RandomNumberGenerator.GenerateRandom(0, UpdatelistGreetMessatge.Count - 1)]; } catch { } } else { msgBodyCompose = MessageWithoutspintax; } #endregion #region DecareVariable By Sanjeev string iweReconnectSubmit = string.Empty; string iweLimitReached = string.Empty; string companyID0 = string.Empty; string companyName0 = string.Empty; //companyName.0 string companyID1 = string.Empty; string schoolID = string.Empty; string schoolcountryCode = string.Empty; string schoolprovinceCode = string.Empty; string subject = string.Empty; string defaultText = string.Empty; string csrfToken = string.Empty; string sourceAlias = string.Empty; string goback = string.Empty; string titleIC0 = string.Empty; string greeting = string.Empty; string startYearIC0 = string.Empty; string endYearIC0 = string.Empty; string schoolText = string.Empty; string titleIB0 = string.Empty; string startYearIB0 = string.Empty; string trk = string.Empty; string authType = string.Empty; string otheremail = string.Empty; string firstName = string.Empty; string lastName = string.Empty; #endregion #region try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"authType"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("value="), ArrForValue[1].IndexOf("id=", ArrForValue[1].IndexOf("value=")) - ArrForValue[1].IndexOf("value=")).Replace("value=", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); authType = (strValue); } catch { } #endregion #region try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"authType"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("value="), ArrForValue[1].IndexOf("id=", ArrForValue[1].IndexOf("value=")) - ArrForValue[1].IndexOf("value=")).Replace("value=", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); authType = (strValue); } catch { } #endregion #region try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"trk"); int tempstartIndex = ArrForValue[1].IndexOf("id=\""); string strValue = ArrForValue[1].Substring(tempstartIndex).Replace("id=\"", ""); strValue = strValue.Substring(0, strValue.IndexOf("\"")); // string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("type="), ArrForValue[1].IndexOf("id=", ArrForValue[1].IndexOf("type=")) - ArrForValue[1].IndexOf("type=")).Replace("type=", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); trk = (strValue).Trim(); } catch { } #endregion //schoolText titleIB.0= #region try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"subject"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("value="), ArrForValue[1].IndexOf("id=", ArrForValue[1].IndexOf("value=")) - ArrForValue[1].IndexOf("value=")).Replace("value=", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); subject = (strValue); } catch { } #endregion #region try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"defaultText"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("value="), ArrForValue[1].IndexOf("id=", ArrForValue[1].IndexOf("value=")) - ArrForValue[1].IndexOf("value=")).Replace("value=", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); defaultText = (strValue); } catch { } #endregion #region try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"csrfToken"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("value="), ArrForValue[1].IndexOf("id=", ArrForValue[1].IndexOf("value=")) - ArrForValue[1].IndexOf("value=")).Replace("value=", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); csrfToken = (strValue); } catch { } #endregion #region try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"sourceAlias"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("value="), ArrForValue[1].IndexOf("id=", ArrForValue[1].IndexOf("value=")) - ArrForValue[1].IndexOf("value=")).Replace("value=", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); sourceAlias = (strValue); } catch { } #endregion #region try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"goback"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("value="), ArrForValue[1].IndexOf("id=", ArrForValue[1].IndexOf("value=")) - ArrForValue[1].IndexOf("value=")).Replace("value=", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); goback = (strValue).Replace(""", "%22").Replace(":", "%3A").Replace(",", "%2C").Replace("/", "%2F").Replace("{", "%7B").Replace(" ", "+"); } catch { } #endregion #region try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"otherEmail"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("value="), ArrForValue[1].IndexOf("id=", ArrForValue[1].IndexOf("value=")) - ArrForValue[1].IndexOf("value=")).Replace("value=", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); otheremail = (strValue); } catch { } #endregion #region try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"iweLimitReached"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("value="), ArrForValue[1].IndexOf("id=", ArrForValue[1].IndexOf("value=")) - ArrForValue[1].IndexOf("value=")).Replace("value=", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); iweLimitReached = (strValue); } catch { } #endregion #region try { try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"iweReconnectSubmit"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("value="), ArrForValue[1].IndexOf("class=", ArrForValue[1].IndexOf("value=")) - ArrForValue[1].IndexOf("value=")).Replace("value=", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); iweReconnectSubmit = (strValue); } catch { } try { if (iweReconnectSubmit.Contains(">") || iweReconnectSubmit.Contains(">")) { iweReconnectSubmit = "Send Invitation"; } } catch { } } catch { } #endregion #region try { try { #region greetmessageparse //string[] ArrForValue = Regex.Split(pageResponce2, "name=\"greeting"); //string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("class=\"message\">"), ArrForValue[1].IndexOf("<", ArrForValue[1].IndexOf("class=\"message\">")) - ArrForValue[1].IndexOf("class=\"message\">")).Replace("class=\"message\">", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); //greeting = (strValue); //greeting = greeting.Replace(" ", "+"); //greeting = Uri.EscapeUriString(greeting); //greeting = greeting.Remove(greeting.IndexOf("@")); //added new #endregion greeting = msgBodyCompose.Replace(",", "+").Replace(" ", "+").Replace("++", "+"); } catch { } try { if (iweReconnectSubmit.Contains(">") || iweReconnectSubmit.Contains(">")) { //iweReconnectSubmit = "Send Invitation"; } } catch { } } catch { } #endregion #region try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"firstName"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("value="), ArrForValue[1].IndexOf("id=", ArrForValue[1].IndexOf("value=")) - ArrForValue[1].IndexOf("value=")).Replace("value=", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); firstName = (strValue).Replace("á", string.Empty); } catch { } #endregion #region try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"lastName"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("value="), ArrForValue[1].IndexOf("id=", ArrForValue[1].IndexOf("value=")) - ArrForValue[1].IndexOf("value=")).Replace("value=", string.Empty).Replace("\\\"", string.Empty).Replace(",", ";").Replace("\"", string.Empty).Trim()); lastName = (strValue); } catch { } #endregion /* #region try { try { string[] ArrForValue = Regex.Split(pageResponce2, "name=\"greeting"); string strValue = (ArrForValue[1].Substring(ArrForValue[1].IndexOf("class=\"message\">"), ArrForValue[1].IndexOf("<", ArrForValue[1].IndexOf("class=\"message\">")) - ArrForValue[1].IndexOf("class=\"message\">")).Replace("class=\"message\">", string.Empty).Replace("\\\"", string.Empty).Replace("\"", string.Empty).Trim()); greeting = (strValue); greeting = greeting.Replace("'", "'"); greeting = greeting.Replace(" ", "+"); greeting = Uri.EscapeUriString(greeting); greeting = greeting.Remove(greeting.IndexOf("@")); //added new } catch { } try { if (iweReconnectSubmit.Contains(">") || iweReconnectSubmit.Contains(">")) { //iweReconnectSubmit = "Send Invitation"; } } catch { } } catch { } #endregion */ string lastPostUrl = "http://www.linkedin.com/people/iweReconnectAction"; // //*********post request for last process of send request string NameOfSender = _UserName.Remove(_UserName.IndexOf("@")); // tab-name username"> string SenderName = string.Empty; try { // SenderName = FRNURLresponce.Substring(FRNURLresponce.IndexOf("tab-name username\">"), (FRNURLresponce.IndexOf("<", FRNURLresponce.IndexOf("tab-name username\">")) - FRNURLresponce.IndexOf("tab-name username\">"))).Replace("tab-name username\">", string.Empty).Trim().Replace("tab-name username\">", string.Empty); int startindex = FRNURLresponce.IndexOf("class=\"act-set-name-split-link\">"); string start = FRNURLresponce.Substring(startindex).Replace("class=\"act-set-name-split-link\">", string.Empty); int endindex = start.IndexOf("</a>"); string end = start.Substring(0,endindex).Replace("</a>",string.Empty); NameOfSender = end.Trim(); // NameOfSender = Uri.EscapeUriString(SenderName); } catch { } greeting = greeting.Replace("<FIRSTNAME>", Val_firstName).Replace("<PROFILEFIRSTNAME>", NameOfSender); // greeting = greeting.Replace("<FIRSTNAME>", firstName).Replace("<PROFILEFIRSTNAME>", NameOfSender); // string LastPostData = "companyName.0=" + companyName0 + "titleIC.0=" + titleIC0 + "&startYearIC.0=" + startYearIC0 + "&endYearIC.0=" + endYearIC0 + "&schoolText=" + schoolText + "&schoolID=" + schoolID + "&companyName.1=" + companyName0 + "&titleIB.0=" + titleIB0 + "&startYearIB.0=" + startYearIB0 + "&endYearIB.0=" + endYearIC0 + "&reason=IF&otherEmail=" + otheremail + "&greeting=" + greeting + "&iweReconnectSubmit=" + iweReconnectSubmit.Replace(" ", "+") + "&key=" + Val_key + "&firstName=" + firstName + "&lastName=" + lastName + "&authToken=" + Val_AuthToken + "&authType=" + Val_AuthType + "&trk=" + trk + "&iweLimitReached=false&companyID.0=" + companyID0 + "&companyID.1=" + companyID1 + "&schoolID=" + schoolID + "&schoolcountryCode=" + schoolcountryCode + "&schoolprovinceCode=" + schoolprovinceCode + "&javascriptEnabled=false&subject=" + subject.Replace(" ", "+") + "&defaultText=" + defaultText + "&csrfToken=" + Val_CsrToken + "&sourceAlias=" + sourceAlias + "&goback=" + goback; string LastPostData = "companyName.0=" + companyName0 + "titleIC.0=" + titleIC0 + "&startYearIC.0=" + startYearIC0 + "&endYearIC.0=" + endYearIC0 + "&schoolText=" + schoolText + "&schoolID=" + schoolID + "&companyName.1=" + companyName0 + "&titleIB.0=" + titleIB0 + "&startYearIB.0=" + startYearIB0 + "&endYearIB.0=" + endYearIC0 + "&reason=IF&otherEmail=" + otheremail + "&greeting=" + greeting + "&iweReconnectSubmit=" + iweReconnectSubmit.Replace(" ", "+") + "&key=" + Val_key + "&firstName=" + firstName + "&lastName=" + lastName + "&authToken=" + Val_AuthToken + "&authType=" + Val_AuthType + "&trk=" + trk + "&iweLimitReached=false&companyID.0=" + companyID0 + "&companyID.1=" + companyID1 + "&schoolID=" + schoolID + "&schoolcountryCode=" + schoolcountryCode + "&schoolprovinceCode=" + schoolprovinceCode + "&javascriptEnabled=false&subject=" + subject.Replace(" ", "+") + "&defaultText=" + defaultText + "&csrfToken=" + Val_CsrToken + "&sourceAlias=" + sourceAlias + "&goback=" + Val_goback; string postResponse1 = HttpHelper.postFormDataProxy(new Uri(lastPostUrl), LastPostData, _ProxyAddress, proxyport, _ProxyUserName, _ProxyPassword); //Esuccess string FinalValue = string.Empty; try { FinalValue = postResponse1.Substring(postResponse1.IndexOf("Esuccess"), (postResponse1.IndexOf(">", postResponse1.IndexOf("Esuccess")) - postResponse1.IndexOf("Esuccess"))).Replace("Esuccess", string.Empty).Trim(); FinalValue = Uri.UnescapeDataString(FinalValue); string[] valuess = Regex.Split(FinalValue, ","); FinalValue = valuess[0].Replace("=", string.Empty).Replace("\"", string.Empty); } catch { } try { string lastGetResponse = HttpHelper.getHtmlfromUrl1(new Uri("http://www.linkedin.com/people/pymk?goback=" + Val_goback + "&trk=" + val_trk + "&report%2Esuccess=" + FinalValue)); } catch { } if (postResponse1.Contains("You must confirm your primary email address before sending an invitation.")) { LoggerManageConnection("[ " + DateTime.Now + " ] => [ " + _UserName + "You must confirm your primary email address before sending an invitation. ]"); valid = false; PageNumber = 0; Isaccountvalid = false; break; } if ((!(pageResponce2.Contains("emailAddress-invitee-invitation"))) && (!(pageResponce2.Contains("Why do I have to enter an email address when I send an Invitation?")))) { //else if (postResponse1.Contains("<strong>Invitation to")) // if (postResponse1.Contains("<strong>Invitation to")) if (postResponse1.Contains("<strong>Invitations") || postResponse1.Contains("Invitation sent")) { if (string.IsNullOrEmpty(firstName) && string.IsNullOrEmpty(lastName)) { firstName = "linkedin"; lastName = "Member"; } if (!(postResponse1.Contains("Your invitation was not sent"))) { clsLDAccount objclsFBAccount = new clsLDAccount(); LoggerManageConnection("[ " + DateTime.Now + " ] => [ Invitation to " + firstName + " " + lastName + " sent From Account :" + _UserName + " ]"); string CSVHeader = "UserName" + "," + "SearchKeyword" + "," + "Invitation Sent To" + "," + "InvitationUrl"; try { string[] url = Regex.Split(FrnAcceptUrL, "&authType"); string CSV_Content = _UserName + "," + _ConnectSearchKeyword + "," + firstName + " " + lastName + "," + url[0]; CSVUtilities.ExportDataCSVFile(CSVHeader, CSV_Content, Globals.path_AddConnectionSuccessWith2ndDegree); objclsFBAccount.InsertSerachWithInviteRecord(_UserName, _ConnectSearchKeyword, firstName + " " + lastName, url[0], url[0].Replace("http://www.linkedin.com/profile/view?id=", "").Trim()); valid = true; SendInvitationCount++; int Delay = RandomNumberGenerator.GenerateRandom(DelayStart, DelayEnd); LoggerManageConnection("[ " + DateTime.Now + " ] => [ Invitation Delayed For : " + Delay + " Seconds ]"); Thread.Sleep(Delay * 1000); } catch { } } } else if (postResponse1.Contains("You and this LinkedIn user don’t know anyone in common")) { string CSVHeader = "UserName" + "," + "SearchKeyword" + "," + "Invitation Sent To" + "," + "InvitationUrl"; string[] url = Regex.Split(FrnAcceptUrL, "&authType"); string CSV_Content = _UserName + "," + _ConnectSearchKeyword + ", ," + url[0]; CSVUtilities.ExportDataCSVFile(CSVHeader, CSV_Content, Globals.path_ConnectionThroughUnkonwPeopleLink); LoggerManageConnection("[ " + DateTime.Now + " ] => [ Failed To Send Invitation From " + _UserName + " ]"); valid = false; Isaccountvalid = false; } else if (postResponse1.Contains("Your invitation was not sent")) { string CSVHeader1 = "UserName" + "," + "SearchKeyword" + "," + "Invitation Sent To" + "," + "InvitationUrl"; string[] url = Regex.Split(FrnAcceptUrL, "&authType"); string CSV_Content = _UserName + "," + _ConnectSearchKeyword + "," + firstName + " " + lastName + "," + url[0]; CSVUtilities.ExportDataCSVFile(CSVHeader1, CSV_Content, Globals.path_ConnectionthroughKeywordSearchnotadded); LoggerManageConnection("[ " + DateTime.Now + " ] => [ Failed To Send Invitation From " + _UserName + " ]"); valid = false; // Isaccountvalid = false; // SendInvitationCount--; } else { string CSVHeader = "UserName" + "," + "SearchKeyword" + "," + "Invitation Sent To" + "," + "InvitationUrl"; string[] url = Regex.Split(FrnAcceptUrL, "&authType"); string CSV_Content = _UserName + "," + _ConnectSearchKeyword + "," + firstName + " " + lastName + "," + url[0]; CSVUtilities.ExportDataCSVFile(CSVHeader, CSV_Content, Globals.path_ConnectionthroughKeywordSearchnotadded); LoggerManageConnection("[ " + DateTime.Now + " ] => [ Failed To Send Invitation From " + _UserName + " ]"); valid = false; // Isaccountvalid = false; //SendInvitationCount--; } } // /* else if (postResponse1.Contains("<strong>Invitation to")) { if (string.IsNullOrEmpty(firstName) && string.IsNullOrEmpty(lastName)) { firstName = "linkedin"; lastName = "Member"; } clsLDAccount objclsFBAccount = new clsLDAccount(); LoggerManageConnection("[ " + DateTime.Now + " ] => [ Invitation to " + firstName + " " + lastName + " sent From Account :" + _UserName + " ]"); string CSVHeader = "UserName" + "," + "SearchKeyword" + "," + "Invitation Sent To" + "," + "InvitationUrl"; try { string[] url = Regex.Split(FrnAcceptUrL, "&authType"); string CSV_Content = _UserName + "," + _ConnectSearchKeyword + "," + firstName + " " + lastName + "," + url[0]; CSVUtilities.ExportDataCSVFile(CSVHeader, CSV_Content, Globals.path_AddConnectionSuccessWith2ndDegree); objclsFBAccount.InsertSerachWithInviteRecord(_UserName, _ConnectSearchKeyword, firstName + " " + lastName, url[0], url[0].Replace("http://www.linkedin.com/profile/view?id=", "").Trim()); valid = true; } catch { } } else if (postResponse1.Contains("You and this LinkedIn user don’t know anyone in common")) { string CSVHeader = "UserName" + "," + "SearchKeyword" + "," + "Invitation Sent To" + "," + "InvitationUrl"; string[] url = Regex.Split(FrnAcceptUrL, "&authType"); string CSV_Content = _UserName + "," + _ConnectSearchKeyword + ", ," + url[0]; CSVUtilities.ExportDataCSVFile(CSVHeader, CSV_Content, Globals.path_ConnectionThroughUnkonwPeopleLink); LoggerManageConnection("[ " + DateTime.Now + " ] => [ Failed To Send Invitation From " + _UserName + " ]"); valid = false; Isaccountvalid = false; } else { string CSVHeader = "UserName" + "," + "SearchKeyword" + "," + "Invitation Sent To" + "," + "InvitationUrl"; string[] url = Regex.Split(FrnAcceptUrL, "&authType"); string CSV_Content = _UserName + "," + _ConnectSearchKeyword + "," + firstName + " " + lastName + "," + url[0]; CSVUtilities.ExportDataCSVFile(CSVHeader, CSV_Content, Globals.path_ConnectionthroughKeywordSearchnotadded); LoggerManageConnection("[ " + DateTime.Now + " ] => [ Failed To Send Invitation From " + _UserName + " ]"); valid = false; Isaccountvalid = false; } */ //int Delay = RandomNumberGenerator.GenerateRandom(SearchMinDelay, SeacrhMaxDelay); //LoggerManageConnection("[ " + DateTime.Now + " ] => [ Invitation Delayed For : " + Delay + " Seconds ]"); //Thread.Sleep(Delay * 1000); // if (!(valid == false)) // { //SendInvitationCount++; { if (SendInvitationCount >= SearchCriteria.NumberOfRequestPerKeyword) //Here we check that number of request send if counter is equal to the number of request put by user then it return to mathod and made pagenumber = 0; { //SendInvitationCount--; PageNumber = 0; return; } } // } } else { LoggerManageConnection("[ " + DateTime.Now + " ] => [ Invitation already sent from" + _UserName + " ]"); } } catch (Exception ex) { string CSVHeader = "UserName" + "," + "SearchKeyword" + "," + "Invitation Sent To" + "," + "InvitationUrl"; string[] url = Regex.Split(FrnAcceptUrL, "&authType"); string CSV_Content = _UserName + "," + _ConnectSearchKeyword + ",," + url[0]; CSVUtilities.ExportDataCSVFile(CSVHeader, CSV_Content, Globals.path_ConnectionthroughKeywordSearchnotadded); LoggerManageConnection("[ " + DateTime.Now + " ] => [ Failed To Send Invitation From " + _UserName + " ]"); valid = false; Isaccountvalid = false; } } }