Beispiel #1
0
        /// <summary>
        /// creates a list of the team URLs prepending the associated url path
        /// </summary>
        /// <returns>generic list of teamURL</returns>
        public List <TeamUrl> GetURLsForStats()
        {
            string rootURL = @"/nba/team/stats/_/name/";

            List <TeamUrl> urls = new List <TeamUrl>();

            doc = GetDocument(URLString);

            HtmlNode urlNode = doc.DocumentNode.SelectSingleNode(XPath);

            HtmlNodeCollection options = urlNode.SelectNodes("//option");

            foreach (HtmlNode option in options)
            {
                if (!string.IsNullOrWhiteSpace(option.InnerText) && !option.InnerText.ToUpper().Equals("MORE NBA TEAMS"))
                {
                    TeamUrl tu = new TeamUrl();
                    tu.ID          = ++count;
                    tu.TeamName    = option.InnerText;
                    tu.TeamURL     = string.Concat(rootURL, option.Attributes["data-param-value"].Value.ToString());
                    tu.Description = option.InnerText;

                    urls.Add(tu);
                }
            }

            return(urls);
        }
Beispiel #2
0
        /// <summary>
        /// Creates an URL list of the existing teams in the NBA by acrpping the URL's from the drop down on a team's web page
        /// </summary>
        /// <returns></returns>
        public List <TeamUrl> GetURLs()
        {
            List <TeamUrl> urls = new List <TeamUrl>();

            doc = GetDocument(URLString);

            HtmlNode urlNode = doc.DocumentNode.SelectSingleNode(XPath);

            HtmlNodeCollection options = urlNode.SelectNodes("//option");

            foreach (HtmlNode option in options)
            {
                if (!string.IsNullOrWhiteSpace(option.InnerText) && !option.InnerText.ToUpper().Equals("MORE NBA TEAMS"))
                {
                    TeamUrl tu = new TeamUrl();
                    tu.ID          = ++count;
                    tu.TeamName    = option.InnerText;
                    tu.TeamURL     = option.Attributes["data-url"].Value;
                    tu.Description = option.InnerText;

                    urls.Add(tu);
                }
            }

            return(urls);
        }
Beispiel #3
0
        public static void Main(string[] args)
        {
            var selenium    = new SeleniumLoader();
            var cacheLoader = new LoaderCacheProxy(selenium);

            Executor.Loader = cacheLoader;
            //Executor.Loader = selenium;
            IExecutor executor = new Executor();

            IUrl mainUrl        = new MainPageUrl();
            var  myLeaguesLinks = executor.Process(mainUrl, new MyLeaguesParser());
            var  deficit        = Utility.MissingElements(myLeaguesLinks, Const.MyLeaguesPrefix);

            #region Action
            //var mpAction = new PageAction(selenium);
            //mpAction.RemoveLeagues(new List<string> { "1_77_KIShoMk3" });
            //mpAction.AddLeagues(deficit);
            //mpAction.Yesterday();
            //var briefResult2 = executor.Parse(new BriefGamesParser());
            #endregion

            var scheduledGames = executor.Parse(new ScheduledGamesLinksParser());

            var liveGames = executor.Parse(new LiveGamesLinksParser());

            var briefResult = executor.Parse(new BriefGamesParser());

            IUrl leagueUrl = new LeagueUrl
            {
                Game    = "football",
                Country = "ukraine",
                League  = "premier-league-2017-2018",
            };
            var gameLinks = executor.Process(leagueUrl, new AllGamesLinksParser());

            IUrl leagueUrl2 = new LeagueUrl
            {
                Game    = "football",
                Country = "ukraine",
                League  = "premier-league",
                Fixture = "standings"
            };
            var league = executor.Process(leagueUrl2, new LeagueParser());

            IUrl gameUrl = new GameUrl
            {
                GameId = "S0yP1iaC" //lbdY67Wj
            };
            var game = executor.Process(gameUrl, new GameParser());

            IUrl gameUrl2 = new GameUrl
            {
                GameId  = "EezrvIMP",
                Fixture = "#match-statistics;0"
            };
            var gameStatistic = executor.Process(gameUrl2, new GameStatisticParser());

            IUrl teamUrl = new TeamUrl
            {
                InnerName = "shakhtar",
                Code      = "4ENWX2OA"
            };
            var team = executor.Process(teamUrl, new TeamParser());

            Console.WriteLine("Done...");
            Console.ReadKey();
        }