Example #1
0
        private void Scraper_ScraperCompleted(object sender, ScraperCompletedEventArgs e)
        {
            InvokeUI(() =>
            {
                Log("Scraper number " + e.Number + " done");
            });

            if (e.isCanceled)
            {
                UpdateListView(e.Number.ToString(), 2, "Canceled");
            }
        }
Example #2
0
        private void Scraper_ScraperCompleted(object sender, ScraperCompletedEventArgs e)
        {
            InvokeUI(() =>
            {
                Log("Scraper number " + e.Number + " done");
                var d = DateTime.Now;

                textBox1.Text = d.ToShortDateString() + " - " + d.ToShortTimeString() + " :: " + "Scraper number " + e.Number + " done" + Environment.NewLine + textBox1.Text;
            });

            if (e.isCanceled)
            {
                UpdateListView(e.Number.ToString(), 2, "Canceled");
            }
        }
Example #3
0
        private void Scraper_ScraperCompleted(object sender, ScraperCompletedEventArgs e)
        {
            DateTime endT = DateTime.Now;

            timer1.Stop();

            InvokeUI(() =>
            {
                linkLabel1.Text = TwitterNetworkUtil.BuildSearchURL(URL: SampleURL);
            });


            if (sampleTweets.Count > 0)
            {
                double size = 0;
                using (Stream s = new MemoryStream())
                {
                    BinaryFormatter formatter = new BinaryFormatter();
                    formatter.Serialize(s, sampleTweets);
                    size = s.Length / 1024;
                }


                double sec   = endT.Subtract(scraper.StartDateTime).TotalSeconds;
                double speed = size / sec;

                DateTime FirstTweet = sampleTweets[sampleTweets.Count - 1].Date;
                DateTime LastTweet  = sampleTweets[0].Date;

                double   TweetsTimespan          = LastTweet.Subtract(FirstTweet).TotalSeconds;
                double   SingleDayTweetsEstimate = (86400 / TweetsTimespan) * sampleTweets.Count;
                double   QueriedDays             = this.TwitterQuery.until.Subtract(TwitterQuery.since).TotalDays;
                TimeSpan ETA = new TimeSpan(Convert.ToInt64(((SingleDayTweetsEstimate * QueriedDays) / sampleTweets.Count) * sec) * 10000000);

                int      Threads   = Math.Min((90 / (int)cpu), Convert.ToInt32((InternetSpeed * 1024) / speed));
                TimeSpan ETAThread = new TimeSpan(Convert.ToInt64(ETA.TotalSeconds / Threads) * 10000000);

                InvokeUI(() =>
                {
                    lblPUtilization.Text = Math.Round(cpu).ToString() + "%";

                    //Performance
                    lblFileSize.Text    = Math.Round(size, 2).ToString() + " kb";
                    label4.Text         = sampleTweets.Count.ToString() + " downloaded in: ";
                    lblTime.Text        = Math.Round(sec, 2).ToString().ToString() + " sec(s)";
                    lblSpeed.Text       = Math.Round(speed, 2).ToString() + " kbps";
                    lblFTDT.Text        = FirstTweet.ToString();
                    lblLTDT.Text        = LastTweet.ToString();
                    lblLargestDiff.Text = LargetTimeDifference.ToString() + " sec(s)";

                    //Estimation
                    lblEstimatedTweets.Text  = String.Format("{0:n0}", SingleDayTweetsEstimate * QueriedDays);
                    lblETASingle.Text        = ETA.Days.ToString() + "  days, " + ETA.Minutes.ToString() + " mins, " + ETA.Seconds.ToString() + " secs.";
                    lblThread.Text           = Threads.ToString();
                    lblEstimatedThreads.Text = ETAThread.Days.ToString() + "  days, " + ETAThread.Minutes.ToString() + " mins, " + ETAThread.Seconds.ToString() + " secs.";

                    lblMessage.Text = "All done.";
                });
            }
            else
            {
                InvokeUI(() =>
                {
                    lblMessage.Text = "The query provided is not invalid. Please click on link and see if Twitter is providing any Tweets. If Twitter has no result, please go back and correct your query.";
                });
            }
        }