예제 #1
0
        private void Window_Closed(object sender, EventArgs e)
        {
            Properties.Settings.Default.EndVisit        = DateTime.Now;
            Properties.Settings.Default.MaxCountSummary = Convert.ToInt32(CountMaxSummaryTextBlock.Text);
            Properties.Settings.Default.Save();

            if (summaries.Count != 0)
            {
                ManagerCSV.Write(summaries.ToList(), pathCSV);
                //if (ManagerCSV.Write(summaries.ToList(), pathCSV))
                //    System.Windows.MessageBox.Show($"Данные выгруженны по пути : {pathCSV}", "Уведомление");
                //else
                //    System.Windows.MessageBox.Show($"Данные не выгруженны!", "Ошибка");
            }

            //System.Windows.Application.Current.Shutdown();
            this.Owner.Close();
        }
예제 #2
0
        private void OpenDialog()
        {
            string path = null;

            var dialog = new System.Windows.Forms.FolderBrowserDialog();

            System.Windows.Forms.DialogResult result = dialog.ShowDialog();
            path = dialog.SelectedPath;

            if (path != null)
            {
                if (ManagerCSV.Write(summaries.ToList(), path, false))
                {
                    System.Windows.MessageBox.Show($"Данные выгруженны по пути : {path}", "Уведомление");
                }
                else
                {
                    System.Windows.MessageBox.Show($"Данные не выгруженны!", "Ошибка");
                }
            }
        }
예제 #3
0
        private async void WriteFeedbakButton_Click(object sender, RoutedEventArgs e)
        {
            if (parser.IsStart)
            {
                System.Windows.MessageBox.Show("Дождитесь остановки парсера!", "Предупреждение");
                return;
            }

            var vacancy = VacancyListView.SelectedItem;

            if (vacancy == null)
            {
                System.Windows.MessageBox.Show("Выберите вакансию!", "Ошибка");
                return;
            }

            pathCSV = OpenDialogSetPatch();

            List <Summary> summaryList = new List <Summary>();

            isLimit = false;
            ParseProgressBar.Value   = 0;
            ParseProgressBar.Maximum = 500;

            summaryList.AddRange(summaries);

            parser.Summaries = new ObservableCollection <Summary>();
            parser.Summaries.CollectionChanged += SummariesGetSearch_CollectionChanged;

            try
            {
                Vacancie buff = new Vacancie();
                while (true)
                {
                    buff = await((ParserAuthorized)parser).GetFeedbackAsync((Vacancie)vacancy);
                    if (buff.Feedbacks.Count == 0)
                    {
                        break;
                    }

                    summaryList.AddRange(buff.Feedbacks);
                }
            }
            catch (Exception)
            {
                if (ManagerCSV.Write(summaryList, pathCSV))
                {
                    System.Windows.MessageBox.Show($"Данные выгруженны по пути : {pathCSV}", "Уведомление");
                }
                else
                {
                    System.Windows.MessageBox.Show($"Данные не выгруженны!", "Ошибка");
                }
                return;
            }

            if (summaryList.Count != 0)
            {
                if (ManagerCSV.Write(summaryList, pathCSV))
                {
                    System.Windows.MessageBox.Show($"Данные выгруженны по пути : {pathCSV}", "Уведомление");
                }
                else
                {
                    System.Windows.MessageBox.Show($"Данные не выгруженны!", "Ошибка");
                }
            }
            else
            {
                System.Windows.MessageBox.Show($"Данные не полученны! Походу вылезла капча, попробуйте перезайти в программу!", "Ошибка");
            }
        }
예제 #4
0
        private async void ParseAndWrite(string path, int countMaxSummaries)
        {
            List <Summary> summaryList = new List <Summary>();

            int countSummaries = countMaxSummaries;

            ParseProgressBar.Value   = 0;
            ParseProgressBar.Maximum = countSummaries;

            summaryList.AddRange(summaries);

            parser.Summaries = new ObservableCollection <Summary>();
            parser.Summaries.CollectionChanged += SummariesGetSearch_CollectionChanged;

            try
            {
                int i            = 0;
                int iPage        = 0;
                int maxCountSumm = countSummaries;
                while (i < countSummaries)
                {
                    if (maxCountSumm > 100)
                    {
                        summaryList.AddRange(await parser.SearchSummariesAsync(UrlSearch(iPage, "100")));
                        i += 100;
                        iPage++;
                    }
                    else
                    {
                        summaryList.AddRange(await parser.SearchSummariesAsync(UrlSearch(iPage, maxCountSumm.ToString())));
                        i += maxCountSumm;
                        iPage++;
                        break;
                    }
                    maxCountSumm -= i;
                }
            }
            catch (Exception)
            {
                if (ManagerCSV.Write(summaryList, path))
                {
                    System.Windows.MessageBox.Show($"Данные выгруженны по пути : {path}", "Уведомление");
                }
                else
                {
                    System.Windows.MessageBox.Show($"Данные не выгруженны!", "Ошибка");
                }
                return;
            }

            if (summaryList.Count != 0)
            {
                if (ManagerCSV.Write(summaryList, path))
                {
                    System.Windows.MessageBox.Show($"Данные выгруженны по пути : {path}", "Уведомление");
                }
                else
                {
                    System.Windows.MessageBox.Show($"Данные не выгруженны!", "Ошибка");
                }
            }
            else
            {
                System.Windows.MessageBox.Show($"Данные не полученны! Походу вылезла капча, попробуйте перезайти в программу!", "Ошибка");
            }
        }