Esempio n. 1
0
        private void ScrapeMemberSeacrh()
        {
            try
            {
                lstIsStopScrapMember.Add(Thread.CurrentThread);
                lstIsStopScrapMember.Distinct();
                Thread.CurrentThread.IsBackground = true;
            }
            catch { }

            try
            {
                TwitterDataScrapper TweetData        = new TwitterDataScrapper();
                GlobusHttpHelper    globusHttpHelper = new GlobusHttpHelper();
                int counter = 0;
                TweetAccountManager TweetLogin = new TweetAccountManager();


                txtlimitScrapeUsers.Invoke(new MethodInvoker(delegate
                {
                    if (!string.IsNullOrEmpty(txtlimitScrapeUsers.Text.Trim()) && NumberHelper.ValidateNumber(txtlimitScrapeUsers.Text.Trim()))
                    {
                        noOfRecords = Convert.ToInt32(txtlimitScrapeUsers.Text.Trim());
                        if (noOfRecords == 0)
                        {
                            AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ Do not put Zero value ]");
                            AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ Default number of records is 50 ]");
                            noOfRecords = 50;
                        }
                    }
                    else
                    {
                        AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ please enter value in number of users ]");
                        return;
                    }
                }));


                foreach (KeyValuePair <string, TweetAccountManager> item in TweetAccountContainer.dictionary_TweetAccount)
                {
                    AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ Login process starting]");
                    if (counter > TweetAccountContainer.dictionary_TweetAccount.Count)
                    {
                        counter = 0;
                    }

                    TweetLogin            = new TweetAccountManager();
                    TweetLogin.Username   = item.Key;
                    TweetLogin.Password   = item.Value.Password;
                    TweetLogin.IPAddress  = item.Value.IPAddress;
                    TweetLogin.IPPort     = item.Value.IPPort;
                    TweetLogin.IPUsername = item.Value.IPUsername;
                    TweetLogin.IPpassword = item.Value.IPpassword;
                    TweetLogin.Login();

                    if (!TweetLogin.IsLoggedIn)
                    {
                        continue;
                    }
                    else
                    {
                        AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ Login process successful]");
                        globusHttpHelper = TweetLogin.globusHttpHelper;
                        counter++;
                        break;
                    }
                }


                if (!TweetLogin.IsLoggedIn)
                {
                    AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ Please Upload Atleast One Working Account To Get Details ]");
                    return;
                }


                AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ Scraping User ]");


                foreach (string item in lstUrl)
                {
                    string tempItem = string.Empty;
                    if (!item.Contains("https://twitter.com"))
                    {
                        tempItem = "https://twitter.com" + item;
                    }
                    else
                    {
                        tempItem = item;
                    }

                    List <string> lstMember    = new List <string>();
                    string        returnStatus = string.Empty;
                    getTweetUsers(item, ref globusHttpHelper);
                    //lstMember = GetMembers(item, ref globusHttpHelper, out returnStatus);
                    AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ Scraped Member for Url " + item + "]");
                }
            }
            catch { }
        }
Esempio n. 2
0
        private void StartUnFollowingMultithreaded(object parameters)
        {
            try
            {
                if (IsStopFollowYourFollowers)
                {
                    return;
                }

                // if (!IsStopFollowYourFollowers)
                {
                    lstIsStopFollowYourFollowers.Add(Thread.CurrentThread);
                    lstIsStopFollowYourFollowers.Distinct();
                    Thread.CurrentThread.IsBackground = true;
                }

                Array paramsArray = new object[2];

                paramsArray = (Array)parameters;
                int NoOfFollwos = 0;
                KeyValuePair <string, TweetAccountManager> keyValue = (KeyValuePair <string, TweetAccountManager>)paramsArray.GetValue(0);
                string NofUnfollows = (string)paramsArray.GetValue(1);
                if (!string.IsNullOrEmpty(NofUnfollows) && NumberHelper.ValidateNumber(NofUnfollows))
                {
                    NoOfFollwos = Int32.Parse(NofUnfollows);
                }
                bool OtherUser = false;
                frmMain_NewUI.IsFollowerScreenName = true;
                List <string> list_userIDsToFollow = new List <string>();

                TweetAccountManager tweetAccountManager = keyValue.Value;
                AddToLog_follow("[ " + DateTime.Now + " ] => [following Process Started For Account : " + keyValue.Key + " ]");
                //Add to Threads Dictionary
                //AddThreadToDictionary(strModule(Module.Follow), tweetAccountManager.Username);
                tweetAccountManager.unFollower.logEvents.addToLogger += new EventHandler(logEvents_Follower_addToLogger);
                tweetAccountManager.logEvents.addToLogger            += logEvents_Follower_addToLogger;
                if (!tweetAccountManager.IsLoggedIn)
                {
                    tweetAccountManager.Login();
                }

                if (!tweetAccountManager.IsLoggedIn)
                {
                    AddToLog_follow("[ " + DateTime.Now + " ] => [ Not Logged In With Account : " + keyValue.Key + " ]");
                    return;
                }
                //////////////temp mehtod
                {
                }
                //AddToLog_Unfollow("Checking for Persons Not Followed Back");

                Thread thread_UnFollowing = null;

                //Check Test box and anf useing feature box is checked
                TwitterDataScrapper objTwitterDataScrapper = new TwitterDataScrapper();
                //if (rdoFollowYourFollowers.Checked)

                //thread_UnFollowing = new Thread(() =>
                //{
                //    list_userIDsToFollow = tweetAccountManager.GetFollowYourFollowersList();

                //});

                list_userIDsToFollow = tweetAccountManager.GetFollowYourFollowersList();

                if (GlobusRegex.ValidateNumber(txtfollowMinDelay.Text))
                {
                    followMinDelay = Convert.ToInt32(txtfollowMinDelay.Text);
                }
                if (GlobusRegex.ValidateNumber(txtfollowMaxDelay.Text))
                {
                    followMaxDelay = Convert.ToInt32(txtfollowMaxDelay.Text);
                }
                if (list_userIDsToFollow.Count > 0)
                {
                    tweetAccountManager.FollowUsingURLs(list_userIDsToFollow, followMinDelay, followMaxDelay, OtherUser);
                }
                else
                {
                    AddToLog_follow("[ " + DateTime.Now + " ] => [ No user id is available for Account : " + keyValue.Key + " ]");
                }

                tweetAccountManager.unFollower.logEvents.addToLogger -= logEvents_Follower_addToLogger;
                tweetAccountManager.logEvents.addToLogger            -= logEvents_Follower_addToLogger;
            }
            catch (Exception ex)
            {
                ErrorLogger.AddToErrorLogText(ex.Message);
                GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> StartUnFollowingMultithreaded()  --> " + ex.Message, Globals.Path_UnfollowerErroLog);
                GlobusFileHelper.AppendStringToTextfileNewLine("Error --> StartUnFollowingMultithreaded() --> " + ex.Message, Globals.Path_TwtErrorLogs);
            }

            finally
            {
                counter_Account--;
                if (counter_Account == 0)
                {
                    if (btnStartFollow.InvokeRequired)
                    {
                        btnStartFollow.Invoke(new MethodInvoker(delegate
                        {
                            AddToLog_follow("[ " + DateTime.Now + " ] => [ PROCESS COMPLETED ]");
                            AddToLog_follow("---------------------------------------------------------------------------------------------------------------------------");
                            btnStartFollow.Cursor = Cursors.Default;
                        }));
                    }
                }
            }
        }
Esempio n. 3
0
        public void StartDMMultiThreaded(object parameter)
        {
            try
            {
                Array paramsArray = new object[1];

                paramsArray = (Array)parameter;

                KeyValuePair<string, TweetAccountManager> item = (KeyValuePair<string, TweetAccountManager>)paramsArray.GetValue(0);

                TweetAccountManager AccountManager = item.Value;

                AccountManager.Username = item.Value.Username;
                AccountManager.Password = item.Value.Password;
                AccountManager.proxyAddress = item.Value.proxyAddress;
                AccountManager.proxyPort = item.Value.proxyPort;
                AccountManager.proxyUsername = item.Value.proxyUsername;
                AccountManager.proxyPassword = item.Value.proxyPassword;

                AddToDMLog("Logging In With Email : " + item.Value.Username);
                if (!AccountManager.IsLoggedIn)
                {
                    AccountManager.Login();
                }

            

                if (AccountManager.IsLoggedIn)
                {
                    AddToDMLog("Logged In With Email :" + AccountManager.Username);
                    TwitterDataScrapper dataScrape = new TwitterDataScrapper();
                    List<string> DMFollowers = dataScrape.GetFollowers(AccountManager.userID);
                    //List<string> DMFollowings = dataScrape.GetFollowings(AccountManager.userID);
                    //List<string> nonFollowings = DMFollowings.Except(DMFollowers).ToList();
                    //List<string> FollowingnFollower = DMFollowings.Except(nonFollowings).ToList();
                    AddToDMLog("Adding User's With Direct Message Option in Email : " + item.Value.Username);
                    DMList.Add(AccountManager.userID, DMFollowers);

                    if (cmbboxUserID.InvokeRequired)
                    {
                        new Thread(() =>
                            {
                                cmbboxUserID.Invoke(new MethodInvoker(delegate
                                {
                                    cmbboxUserID.Items.Add(AccountManager.userID + ":" + AccountManager.Username);
                                }));
                            }
                        ).Start();
                    }
                }
                else
                {
                    AddToDMLog("Account : " + AccountManager.Username + " Not Logged In");
                }
            }
            catch(Exception ex)
            {
                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> StartDMMultiThreaded() --> " + ex.Message, Globals.Path_DMErroLog);
                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine("Error --> StartDMMultiThreaded() --> " + ex.Message, Globals.Path_TwtErrorLogs);
            }
        }
Esempio n. 4
0
        public void RetweetDataExtractor()
        {
            try
            {
                if (!string.IsNullOrEmpty(txtRetweetCount.Text) && NumberHelper.ValidateNumber(txtRetweetCount.Text))
                {
                    RetweetExtractCount = Convert.ToInt32(txtRetweetCount.Text);
                    TwitterDataScrapper.RetweetExtractcount = RetweetExtractCount;
                }
                else
                {
                    AddToTweetCreatorLogs("Entered Count incorrect.Setting Default Count 10");
                }

                TwitterDataScrapper DataScraper = new TwitterDataScrapper();
                foreach (string item in lstUserId_Retweet)
                {
                    AddToTweetCreatorLogs("Extracting ReTweets For " + item);
                    List<string> TweetData = DataScraper.GetRetweetData_Scrape(item);
                    AddToTweetCreatorLogs(TweetData.Count + " Retweet From User : "******":");
                                if (arry.Length == 3)
                                {
                                    AddToTweetCreatorLogs("---------------------------------------------------------");
                                    AddToTweetCreatorLogs(arry[0] + " : " + arry[1]);
                                    AddToTweetCreatorLogs(arry[2]);
                                    clsDBQueryManager DataBase = new clsDBQueryManager();
                                    DataBase.InsertDataRetweet(arry[0], arry[1], arry[2]);
                                }
                                else
                                {

                                }
                            }
                        }).Start();
                    }
                    else
                    {
                        AddToTweetCreatorLogs("Sorry No ReTweets For " + item);
                    }
                }
                AddToTweetCreatorLogs("Finished Extracting ReTweets");
                AddToTweetCreatorLogs("ReTweets Stored In -" + Globals.Path_RETweetExtractor);
                if (txtRetweetSingle.InvokeRequired)
                {
                    txtRetweetSingle.Invoke(new MethodInvoker(delegate
                    {
                        txtRetweetSingle.Text = "";
                    }));
                }
                if (txtRetweetFile.InvokeRequired)
                {
                    txtRetweetFile.Invoke(new MethodInvoker(delegate
                    {
                        txtRetweetFile.Text = "";
                    }));
                }
            }
            catch (Exception ex)
            {
                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> RetweetDataExtractor() --> " + ex.Message, Globals.Path_TweetCreatorErroLog);
                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine("Error --> RetweetDataExtractor() --> " + ex.Message, Globals.Path_TwtErrorLogs);
            }
        }
Esempio n. 5
0
        public List<string> GetFollowingsUsingUserID(string userID)
        {
            List<string> list_Followings = new List<string>();

            TwitterDataScrapper followingScrapper = new TwitterDataScrapper();

            list_Followings = followingScrapper.GetFollowings(userID);

            return list_Followings;
        }
Esempio n. 6
0
        public void TweetDataExtract()
        {
            try
            {
                if (!string.IsNullOrEmpty(txtTweetExtractCount.Text) && NumberHelper.ValidateNumber(txtTweetExtractCount.Text))
                {
                    TweetExtractCount = Convert.ToInt32(txtTweetExtractCount.Text);

                    if (TweetExtractCount > 200)
                    {
                        TwitterDataScrapper.TweetExtractCount = 200;
                        AddToTweetCreatorLogs("Extracting Default No Of Tweet : 200");
                    }
                    else
                    {
                        TwitterDataScrapper.TweetExtractCount = TweetExtractCount;
                    }
                }
                else
                {
                    AddToTweetCreatorLogs("Entered Count incorrect.Setting Default Count 10");
                }

                int counter = 0;
                TwitterDataScrapper DataScraper = new TwitterDataScrapper();
                foreach (string item in lstUserId_Tweet)
                {
                    AddToTweetCreatorLogs("Extracting Tweets For " + item);
                    List<string> TweetData = DataScraper.GetTweetData_Scrape(item);
                    if (TweetData.Count > 0)
                    {
                        foreach (string newItem in TweetData)
                        {
                            AddToTweetCreatorLogs(newItem);
                        }
                    }
                    else
                    {
                        AddToTweetCreatorLogs("Sorry No Tweets For " + item);
                    }
                }
                AddToTweetCreatorLogs("Finished Extracting Tweets");
                AddToTweetCreatorLogs("Tweets Stored In -" + Globals.Path_TweetExtractor);
                if (txtTweetName.InvokeRequired)
                {
                    txtTweetName.Invoke(new MethodInvoker(delegate
                   {
                       txtTweetName.Text = "";
                   }));
                }
                if (txtExtractorFile.InvokeRequired)
                {
                    txtExtractorFile.Invoke(new MethodInvoker(delegate
                    {
                        txtExtractorFile.Text = "";
                    }));
                }
            }
            catch (Exception ex)
            {
                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> TweetDataExtract() --> " + ex.Message, Globals.Path_TweetCreatorErroLog);
                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine("Error --> TweetDataExtract() --> " + ex.Message, Globals.Path_TwtErrorLogs);
            }
        }
Esempio n. 7
0
        private void threadStartScrape()
        {
            List<string> lst_structTweetFollowersIDs = new List<string>();
            List<string> lst_structTweetFollowingsIds = new List<string>();
            GlobusHttpHelper globusHttpHelper = new GlobusHttpHelper();
            string user_id = string.Empty;
                    
            foreach (string keyword in lstscrapeUsername)
            {
                if (!GlobusRegex.ValidateNumber(keyword))//(!IsItNumber(user_id_toFollow))
                {
                    user_id = TwitterDataScrapper.GetUserIDFromUsername(keyword);
                }
                else
                {
                    user_id = keyword;
                }

                TwitterDataScrapper dataScrapeer = new TwitterDataScrapper();
                
                if (chkboxScrapeFollowers.Checked)
                {
                    try
                    {
                        if (!File.Exists(Globals.Path_ScrapedFollowersList))
                        {
                            GlobusFileHelper.AppendStringToTextfileNewLine("User_ID , FollowersUserID", Globals.Path_ScrapedFollowersList);
                        }
                        lst_structTweetFollowersIDs = dataScrapeer.GetFollowers(user_id);
                        //lst_structTweetFollowingsIds = dataScrapeer.GetFollowings(user_id);

                        AddToScrapeLogs("Added " + lst_structTweetFollowersIDs.Count + " Followers to list");
                        //AddToScrapeLogs("Added " + lst_structTweetFollowingsIds.Count + " Followings to list");
                        foreach (string data in lst_structTweetFollowersIDs)
                        {
                            try
                            {
                                Globals.lstScrapedUserIDs.Add(data);
                                GlobusFileHelper.AppendStringToTextfileNewLine(user_id + "," + data, Globals.Path_ScrapedFollowersList);
                                AddToScrapeLogs(data);
                            }
                            catch (Exception ex)
                            {
                                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> btnScrapeKeyword_Click() -- lst_structTweetFollowersIDs foreach  --> " + ex.Message, Globals.Path_ScrapeUsersErroLog);
                                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine("Error --> btnScrapeKeyword_Click() -- lst_structTweetFollowersIDs foreach --> " + ex.Message, Globals.Path_TwtErrorLogs);
                            }
                        }

                        
                        //AddToScrapeLogs("Added " + lst_structTweetFollowersIDs.Count + " Followers from User: "******"Data Exported to " + Globals.Path_ScrapedFollowersList);
                        if (Globals.IsDirectedFromFollower)
                        {
                            AddToLog_Follower("Added " + lst_structTweetFollowersIDs.Count + " Followers from User: "******" --> Error --> btnScrapeUser_Click() -- chkboxScrapeFollowers.Checked --> " + ex.Message, Globals.Path_ScrapeUsersErroLog);
                        Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine("Error --> btnScrapeUser_Click() -- chkboxScrapeFollowers.Checked --> " + ex.Message, Globals.Path_TwtErrorLogs);
                    }
                }
               
                if (chkboxScrapeFollowings.Checked)
                {
                    try
                    {
                        if (!File.Exists(Globals.Path_ScrapedFollowingsList))
                        {
                            GlobusFileHelper.AppendStringToTextfileNewLine("User_ID , FollowingsUserID", Globals.Path_ScrapedFollowingsList);
                        }
                        lst_structTweetFollowingsIds = dataScrapeer.GetFollowings(user_id);
                        AddToScrapeLogs("Added " + lst_structTweetFollowingsIds.Count + " Followings to list");

                        foreach (string data in lst_structTweetFollowingsIds)
                        {
                            try
                            {
                                Globals.lstScrapedUserIDs.Add(data);
                                GlobusFileHelper.AppendStringToTextfileNewLine(user_id + "," + data, Globals.Path_ScrapedFollowingsList);
                                AddToScrapeLogs(data);
                            }
                            catch (Exception ex)
                            {
                                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> btnScrapeKeyword_Click() -- lst_structTweetFollowingsIds foreach --> " + ex.Message, Globals.Path_ScrapeUsersErroLog);
                                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine("Error --> btnScrapeKeyword_Click() -- lst_structTweetFollowingsIds foreach --> " + ex.Message, Globals.Path_TwtErrorLogs);
                            }
                        }

                        AddToScrapeLogs("Added " + lst_structTweetFollowingsIds.Count + " Followings from User: "******"Data Exported to " + Globals.Path_ScrapedFollowingsList);
                        if (Globals.IsDirectedFromFollower)
                        {
                            AddToLog_Follower("Added " + lst_structTweetFollowingsIds.Count + " Followings from User: "******" --> Error --> btnScrapeKeyword_Click() -- lst_structTweetFollowingsIds foreach --> " + ex.Message, Globals.Path_ScrapeUsersErroLog);
                        Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine("Error --> btnScrapeKeyword_Click() -- lst_structTweetFollowingsIds foreach --> " + ex.Message, Globals.Path_TwtErrorLogs);
                    }
                }

                Globals.lstScrapedUserIDs = Globals.lstScrapedUserIDs.Distinct().ToList();
                ////new Thread(() =>
                ////{
                //foreach (string data in lst_structTweetFollowersIDs)
                //{
                //    try
                //    {
                //        clsDBQueryManager DataBase = new clsDBQueryManager();
                //        DataBase.InsertOrUpdateScrapeSetting(data, "");
                //    }
                //    catch (Exception ex)
                //    {

                //    }
                //}
                //// }
                ////).Start();
                //AddToScrapeLogs("Added " + lst_structTweetFollowingsIds.Count + " Followings from User: "******"" , "");
                        }
                        catch (Exception ex)
                        {
                            Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> lstScrapedUserIDs --> " + ex.Message, Globals.Path_ScrapeUsersErroLog);
                            Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine("Error --> lstScrapedUserIDs --> " + ex.Message, Globals.Path_TwtErrorLogs);
                        }
                    }
                }
                ).Start();
        }
Esempio n. 8
0
        private void ScrapeKeywordSeacrh()
        {
            try
            {
                TwitterDataScrapper TweetData = new TwitterDataScrapper();
                if (!string.IsNullOrEmpty(txtRecords.Text) && NumberHelper.ValidateNumber(txtRecords.Text))
                {
                    TweetData.noOfRecords = Convert.ToInt32(txtRecords.Text);
                }
                else
                {
                    TweetData.noOfRecords = 100;
                }

                //List<TwitterDataScrapper.StructTweetIDs> data = TweetData.GetTweetData(txtScrapeKeyword.Text);

                List<TwitterDataScrapper.StructTweetIDs> data = TweetData.KeywordStructData(txtScrapeKeyword.Text);

                data = DistinctDataList(data);

                if (!(data.Count() > 0))
                {
                    AddToScrapeLogs("Request Not Complted");
                    AddToScrapeLogs("Requesting For 100 USer ids");
                    data = TweetData.GetTweetData(txtScrapeKeyword.Text);
                }

                AddToScrapeLogs(data.Count + " User ids Scraped ");

                AddToScrapeLogs("Please Wait Till Data Is Retrieving");
                
                int counter = 0;

                if (!File.Exists(Globals.Path_KeywordScrapedList))
                {
                    GlobusFileHelper.AppendStringToTextfileNewLine("Keyword , User-id , Username" , Globals.Path_KeywordScrapedList);
                }

                foreach (TwitterDataScrapper.StructTweetIDs item in data)
                {
                    if (!string.IsNullOrEmpty(item.username__Tweet_User) && item.ID_Tweet_User != "null")
                    {
                        Globals.lstScrapedUserIDs.Add(item.ID_Tweet_User);
                        GlobusFileHelper.AppendStringToTextfileNewLine(txtScrapeKeyword.Text + "," + item.ID_Tweet_User + "," + item.username__Tweet_User, Globals.Path_KeywordScrapedList);
                        //AddToScrapeLogs(item.ID_Tweet_User);

                    }
                    
                }
                //AddToScrapeLogs("Retrieving data");
                AddToScrapeLogs("Adding Data To DataBase");
                Globals.lstScrapedUserIDs = Globals.lstScrapedUserIDs.Distinct().ToList();

                if (!File.Exists(Globals.Path_KeywordScrapedList))
                {
                    GlobusFileHelper.AppendStringToTextfileNewLine("KEYWORD:USER ID:USERNAME ", Globals.Path_KeywordScrapedList);
                }

                new Thread(() =>
                {
                    foreach (TwitterDataScrapper.StructTweetIDs item in data)
                    {
                        if (!string.IsNullOrEmpty(item.username__Tweet_User) && item.ID_Tweet_User != "null")
                        {
                            AddToScrapeLogs(item.ID_Tweet_User);
                            clsDBQueryManager DataBase = new clsDBQueryManager();
                            DataBase.InsertOrUpdateScrapeSetting(item.ID_Tweet_User, item.username__Tweet_User, item.ID_Tweet);
                        }
                    }
                }).Start();

                if (Globals.IsDirectedFromFollower)
                {
                    Thread.Sleep(1000);
                    Globals.IsDirectedFromFollower = false;
                    AddToLog_Follower(data.Count + " User ids Scraped and Added To Follow List");
                    tabMain.Invoke(new MethodInvoker(delegate
                    {
                        tabMain.SelectedIndex = 2;
                    }));

                    //tabMain.SelectedIndex = 2;
                }
            }
            catch (Exception ex)
            {
                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> ScrapeKeywordSeacrh() --> " + ex.Message, Globals.Path_ScrapeUsersErroLog);
                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine("Error --> ScrapeKeywordSeacrh() --> " + ex.Message, Globals.Path_TwtErrorLogs);
            }
        }
Esempio n. 9
0
        private void btnStartReTweeting_Click(object sender, EventArgs e)
        {
            if (chkboxReplyPerDay.Checked)
            {
                MessageBox.Show("Please Check Retweet Per Day Of No Of Retweet");
                return;
            }

            if (!string.IsNullOrEmpty(txtTweetKeyword.Text))
            {
                string tweetKeyword = txtTweetKeyword.Text;
                new Thread(() =>
                {
                    {
                        //Scrap Tweets using Keyword
                        TwitterDataScrapper tweetScrapper = new TwitterDataScrapper();
                        TweetAccountManager.static_lst_Struct_TweetData = tweetScrapper.GetTweetData(tweetKeyword);

                        StartReTweeting(); 
                    }
                }).Start();
            }
            else
            {
                MessageBox.Show("Please enter Tweet Search Keyword");
            }
        }
Esempio n. 10
0
        private void btnStartReplying_Click(object sender, EventArgs e)
        {
            if (chkboxRetweetPerDay.Checked)
            {
                MessageBox.Show("Please Check Reply Per Day or No Of Reply");
                return;
            }
            if (listTweetMessages.Count >= 1 && !string.IsNullOrEmpty(txtTweetKeyword.Text))
            //if (!string.IsNullOrEmpty(txtTweetKeyword.Text))
            {
                string tweetKeyword = txtTweetKeyword.Text;
                new Thread(() =>
                {
                   
                    TwitterDataScrapper tweetScrapper = new TwitterDataScrapper();
                    TweetAccountManager.static_lst_Struct_TweetData = tweetScrapper.GetTweetData(tweetKeyword);

                    StartReplying();
                }).Start();
            }
            else
            {
                MessageBox.Show ("Please upload Tweet Messages File & put a Tweet Search Keyword");
            }
        }
Esempio n. 11
0
        private void ScrapeKeywordSeacrh()
        {
            TwitterDataScrapper TweetData = new TwitterDataScrapper();
            TweetData.noOfRecords = 1000;

            List<TwitterDataScrapper.StructTweetIDs> data = TweetData.GetTweetData(txtScrapeKeyword.Text);

            AddToScrapeLogs(data.Count + " User ids Scraped ");

            foreach (TwitterDataScrapper.StructTweetIDs item in data)
            {
                Globals.lstScrapedUserIDs.Add(item.ID_Tweet_User);
                AddToScrapeLogs(item.ID_Tweet_User);
            }
            Globals.lstScrapedUserIDs = Globals.lstScrapedUserIDs.Distinct().ToList();

            new Thread(() =>
                    {
                        foreach (TwitterDataScrapper.StructTweetIDs item in data)
                        {
                            clsDBQueryManager DataBase = new clsDBQueryManager();
                            DataBase.InsertOrUpdateScrapeSetting(item.ID_Tweet_User, item.username__Tweet_User);
                        }
                    }).Start();
            if (Globals.IsDirectedFromFollower)
            {
                Thread.Sleep(1000);
                Globals.IsDirectedFromFollower = false;
                AddToLog_Follower(data.Count + " User ids Scraped and Added To Follow List");
                tabMain.Invoke(new MethodInvoker(delegate
                {
                    tabMain.SelectedIndex = 2;
                }));
                
                //tabMain.SelectedIndex = 2;
            }
        }
        private void ScrapeMemberSeacrh()
        {
            try
            {
                lstIsStopScrapMember.Add(Thread.CurrentThread);
                lstIsStopScrapMember.Distinct();
                Thread.CurrentThread.IsBackground = true;
            }
            catch { }

            try
            {
                TwitterDataScrapper TweetData = new TwitterDataScrapper();

                txtlimitScrapeUsers.Invoke(new MethodInvoker(delegate
                {
                    if (!string.IsNullOrEmpty(txtlimitScrapeUsers.Text.Trim()) && NumberHelper.ValidateNumber(txtlimitScrapeUsers.Text.Trim()))
                    {
                        noOfRecords = Convert.ToInt32(txtlimitScrapeUsers.Text.Trim());
                        if (noOfRecords == 0)
                        {
                            AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ Do not put Zero value ]");
                            AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ Default number of records is 50 ]");
                            noOfRecords = 50;
                        }
                    }
                    else
                    {
                        AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ please enter value in number of users ]");
                        return;
                    }
                }));

                AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ Scraping User INfo ]");

                if (!chkUserInfo.Checked)
                {
                    foreach (string item in lstUrl)
                    {
                        if (!item.Contains("https://twitter.com"))
                        {
                            AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [  You have entered invalid URL   " + item + "]");
                            continue;
                        }

                        List <string> lstMember    = new List <string>();
                        string        returnStatus = string.Empty;

                        lstMember = GetMembers(item, out returnStatus);
                        AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ Scraped Member for Url " + item + "]");
                    }
                }

                else
                {
                    foreach (string item in lstUrl)
                    {
                        Thread scrapinfo = new Thread(scrapUserInfo);
                        scrapinfo.Start(new object[] { item });
                        Thread.Sleep(200);
                    }
                }

                //AddToLog_ScrapMember("[ " + DateTime.Now + " ] => [ process completed ]");
            }
            catch { }
        }
Esempio n. 13
0
        public void getHashTags()
        {
            Globals.HashTags.Clear();
            TwitterDataScrapper dataScrape = new TwitterDataScrapper();
            string returnStatus = string.Empty;
            Globals.HashTags = dataScrape.GetHashTags(out returnStatus);

            AddToScrapeLogs(Globals.HashTags.Count + " Trending Hash Tags");
            foreach (string data in Globals.HashTags)
            {
                AddToScrapeLogs(data);
                GlobusFileHelper.AppendStringToTextfileNewLine(data, Globals.Path_HashtagsStore);
            }
            AddToScrapeLogs("Hash tag Finished");
        }
Esempio n. 14
0
        private void btn_FollowByKeyWordStart_Click(object sender, EventArgs e)
        {
            TweetAccountManager TweetAccountManager = new TweetAccountManager();
            TwitterDataScrapper TwitterDataScrapper = new TwitterDataScrapper();
            int FollowLimitCounter = 0;
            int AccountCounter = 0;
            if (TweetAccountContainer.dictionary_TweetAccount.Count > 0)
            {
                try
                {
                    foreach (KeyValuePair<string, TweetAccountManager> item in TweetAccountContainer.dictionary_TweetAccount)
                    {

                        string profileUsername = string.Empty;
                        string profileUserpass = string.Empty;

                        profileUsername = item.Key;
                        profileUserpass = item.Value.Password;


                        //******search profile By keyWords
                        string SeachKey = string.Empty;
                        List<TwitterDataScrapper.StructTweetIDs> KeywordStructData = new List<TwitterDataScrapper.StructTweetIDs>();
                        if (FollowtweetKeywordList.Count != 0)
                        {
                            SeachKey = FollowtweetKeywordList[AccountCounter];
                            KeywordStructData = TwitterDataScrapper.KeywordStructData(SeachKey);
                        }
                        else
                        {
                            MessageBox.Show("Please Upload Keywords");
                            break;
                        }


                        //*************
                        try
                        {
                            if (KeywordStructData.Count > 0)
                            {
                                foreach (var item1 in KeywordStructData)
                                {
                                    //accordint to get Follow users limits 
                                    if (FollowLimitCounter >= (int.Parse(txt_FollowByPerAccount.Text)))
                                    {
                                        FollowLimitCounter = 0;
                                        break;
                                    }
                                    else
                                    {
                                        FollowLimitCounter++;
                                    }

                                    //Get follow from user
                                    string AccountId = item1.ID_Tweet_User;
                                    getFollowUserBySearch(new object[] { item, AccountId });
                                }
                            }
                            else
                            {
                                //Message List is Empty

                                AddToLog_Follower("Key Word File is Empty or Wrong Formate");

                                break;
                            }
                        }
                        catch (Exception)
                        {
                           
                        }

                        //if (AccountCounter > FollowtweetKeywordList.Count)
                        //    AccountCounter = 0;
                        if (AccountCounter > TweetAccountContainer.dictionary_TweetAccount.Count)
                        {
                            AccountCounter = 0;
                        }
                        else
                        {
                            AccountCounter++;
                        }

                    }
                }
                catch (Exception)
                {
                   
                }
            }
            else
            {
                MessageBox.Show("Please Upload Twitter Account");
                AddToLog_Follower("Please Upload Twitter Account");
            }

        }
Esempio n. 15
0
        public List<string> GetFollowingsUsingUserID(string userID)
        {
            List<string> list_Followings = new List<string>();

            TwitterDataScrapper followingScrapper = new TwitterDataScrapper();
            string returnStatus = string.Empty;
            list_Followings = followingScrapper.GetFollowings(userID, out returnStatus);

            return list_Followings;
        }