示例#1
0
        private void ParseSpecialityDetails(string pageRefer, string regionName)
        {
            try
            {
                string source;

                HttpWebRequest  req  = (HttpWebRequest)HttpWebRequest.Create(pageRefer);
                HttpWebResponse resp = (HttpWebResponse)req.GetResponse();

                using (StreamReader stream = new StreamReader(resp.GetResponseStream(), Encoding.UTF8))
                {
                    source = stream.ReadToEnd();
                }

                Regex  univerRegex     = new Regex(universityPattern);
                Match  universityMatch = univerRegex.Match(source);
                string universityName  = universityMatch.Groups[1].Value.ToString();

                if (IsCollege(universityName))
                {
                    throw new Exception("Коледж");
                }
                //Нужно очистить от "колледж", "&quot" и тд
                //По названию города в названии вуза определить область вуза
                if (String.IsNullOrEmpty(currentUniversity.UniversityName))
                {
                    currentUniversity.UniversityName = universityName;
                    currentUniversity.RegionName     = regionName;
                    currentUniversity.FillCity(regionName);
                }

                Regex  facultyRegex = new Regex(facultyPattern);
                Match  facultyMatch = facultyRegex.Match(source);
                string facultyName  = facultyMatch.Groups[1].Value.ToString();
                if (!currentUniversity.IsFacultyExist(facultyName))
                {
                    currentUniversity.Faculties.Add(new FacultyData(facultyName));
                }
                //если нету такого факультета - добавить

                Regex  specRegex = new Regex(specialityPattern);
                Match  specMatch = specRegex.Match(source);
                string specName  = specMatch.Groups[1].Value.ToString();
                currentUniversity.AddSpecialityToFaculty(facultyName, specName);
                //к новому или уже существующему факультету добавить специальность
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                IsUniversity = false;
            }
        }