Ejemplo n.º 1
0
        public MuscleGroups GetMuscleGroupsAndLinksFromMainPage()
        {
            MuscleGroups list     = new MuscleGroups();
            string       homepage = "https://exrx.net/Lists/Directory";

            Driver.Navigate().GoToUrl(homepage);

            ReadOnlyCollection <IWebElement> majorGroups = GetElementsWithCSSSelector("div>ul>li>a");

            for (int i = 0; i < majorGroups.Count; i++)
            {
                IWebElement majorGroup = majorGroups[i];
                list.Add(new MuscleGroup(majorGroup.Text, majorGroup.GetAttribute("href")));
            }
            return(list);
        }
Ejemplo n.º 2
0
        public void GetExercisesForMuscleGroups(MuscleGroups muscleGroups)
        {
            List <string> texts = new List <string>();

            for (int i = 0; i < muscleGroups.Count; i++)
            {
                MuscleGroup muscleGroup = muscleGroups[i];
                Driver.Navigate().GoToUrl(muscleGroup.Link);
                ReadOnlyCollection <IWebElement> allLinks = GetElementsWithCSSSelector("a");
                foreach (IWebElement pageLink in allLinks)
                {
                    string linkText = pageLink.Text;
                    if (linkText.IsNullOrEmpty())
                    {
                        continue;
                    }

                    bool isStrong = pageLink.FindElements(By.XPath("strong")).Count > 0;
                    if (!isStrong)
                    {
                        continue;
                    }

                    string           exerciseLink     = pageLink.GetAttribute("href");
                    ExerciseAndLinks exerciseAndLinks = muscleGroup.ExercisesAndLinks.FirstOrDefault(e => e.Exercise.Equals(linkText));
                    if (exerciseAndLinks == null)
                    {
                        muscleGroup.ExercisesAndLinks.Add(new ExerciseAndLinks(linkText, exerciseLink));
                    }
                    else
                    {
                        exerciseAndLinks.Links.Add(exerciseLink);
                    }
                }
            }
        }