Exemple #1
0
        /* http://www.css-tricks.ru/articles/css/attribute-selectors */
        /*https://megabit32.ru/ */
        private async void Start(object sender, EventArgs e)
        {
            if (isWorking)
            {
                log.Text = "Программа запущена"; return;
            }
            if (!ParserHtml.ValidateUri(Url.Text))
            {
                log.Text = "Не валидный Url"; return;
            }
            if (Path.Text == "")
            {
                log.Text = "Заполните поле :\n'Путь для сохранения' "; return;
            }
            Parser main = new Parser(Url.Text, Path.Text, "index.html");
            List <SaveReferences> UsefullList = new List <SaveReferences> (main.Preparation(ListSR));

            if (UsefullList.Count == 0)
            {
                log.Text = "Не выбрана \nни одна страница"; return;
            }
            log.Text  = "";
            isWorking = true;
            log.Text  = await Task.Run(() => main.MainPage(UsefullList, this));

            isWorking = false;
        }
Exemple #2
0
        public void LogIn(string name, string password, Config config)
        {
            var task = Task.Run(() => ParserHtml.Authorize(name, password));

            //task.Wait();
            config.idSession = task.Result;

            if (config.idSession == null)
            {
                return;
            }
            var taskAv = Task.Run(() => ParserHtml.GetAvatarAddress(config.idSession));

            config.AvatarAddress = taskAv.Result;
        }
Exemple #3
0
        public void PresentNews()
        {
            var task = Task.Run(() => ParserHtml.ParseNews(_address));

            task.Wait();

            News[]     news      = task.Result;
            StackPanel newsPanel = new StackPanel()
            {
                Orientation = Orientation.Vertical
            };

            for (int i = 0; i < news.Length; i++)
            {
                NewsPost post = new NewsPost(news[i].Title, news[i].Author, news[i].Content.ToString());
                newsPanel.Children.Add(post);
            }

            NewsPanel.Add(newsPanel);
        }
Exemple #4
0
        public void PresentNews(object dispatcher)
        {
            IsLoading = true;

            ((Dispatcher)dispatcher).BeginInvoke(new Action(() =>
            {
                Loading loading = new Loading();
                ContentPanel.Clear();
                ContentPanel.Add(loading);
            }));

            var task = Task.Run(() => ParserHtml.ParseNews(_address));

            task.Wait();

            ((Dispatcher)dispatcher).BeginInvoke(new Action(() =>
            {
                News[] news          = task.Result;
                StackPanel newsPanel = new StackPanel()
                {
                    Orientation = Orientation.Vertical
                };
                for (int i = 0; i < news.Length; i++)
                {
                    NewsPost post = new NewsPost(news[i].Title, news[i].Author, news[i].Content.ToString());
                    newsPanel.Children.Add(post);
                }

                if (IsLoading == false)
                {
                    return;
                }

                ContentPanel.Clear();
                ContentPanel.Add(newsPanel);
                IsLoading = false;
            }));
        }
Exemple #5
0
 private void guna2Button2_Click(object sender, EventArgs e)
 {
     if (ParserHtml.ValidateUri(Url.Text))
     {
         log.Text = "";
         Parser ViewPages = new Parser(Url.Text);
         ListSR = ViewPages.StartGetPages();
         MakesChoicePages(ListSR);
         Guna.UI2.WinForms.Guna2Button parserB = new Guna.UI2.WinForms.Guna2Button();
         parserB.BorderRadius = 15;
         parserB.FillColor    = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(192)))), ((int)(((byte)(192)))));
         parserB.Size         = new System.Drawing.Size(141, 27);
         parserB.Text         = "Спарсить";
         parserB.Location     = new Point(239, 321);
         parserB.Click       += new System.EventHandler(this.Start);
         parserB.ForeColor    = Color.FromKnownColor(KnownColor.Black);
         this.Controls.Add(parserB);
     }
     else
     {
         log.Text = "Не валидный Url";
     }
 }