Beispiel #1
0
        public MatchResult[] GetResults(int days = 1)
        {
            var r = new List <MatchResult>();

            for (int i = 0; i < days; i++)
            {
                var html       = ApliClient.Get($"http://fifaonlinecup.org/en/results-en/schedule/" + i);
                var matchNodes = html.GetCssNodes("table.table-result > tr");

                DateTime matchDate  = DateTime.Now;
                var      tournament = string.Empty;

                foreach (var item in matchNodes)
                {
                    if (item.InnerHtml.GetCssNodes(".result-date").Any())
                    {
                        var date = item.InnerHtml.GetCssNode("span").InnerText.Trim();
                        matchDate = DateTime.ParseExact(date, "dd.MM.yyyy", CultureInfo.InvariantCulture);

                        tournament = item.InnerHtml.GetCssNode("a").InnerText;
                        continue;
                    }

                    r.Add(ConvertToMatchResult(matchDate, tournament, item.InnerHtml));
                }
            }

            return(r.ToArray());
        }
Beispiel #2
0
        public HeadToHead GetHeadToHead(string t1, string t2)
        {
            var p1n = t1.ToLower();
            var p2n = t2.ToLower();

            var h2h = new HeadToHead
            {
                Player1 = t1,
                Player2 = t2
            };

            if (playerMapping.ContainsKey(p1n) && playerMapping.ContainsKey(p2n))
            {
                var html       = ApliClient.Get($"http://fifaonlinecup.org/en/h2h-en?home={playerMapping[p1n]}&away={playerMapping[p2n]}");
                var matchNodes = html.GetCssNodes("table.table-result > tbody > tr");

                DateTime dt         = DateTime.Now;
                var      tournament = string.Empty;
                var      r          = new List <MatchResult>();

                foreach (var item in matchNodes)
                {
                    if (item.InnerHtml.Replace("\n", "").Trim().GetCssNode("td").Attributes["class"].Value == "result-date")
                    {
                        var date = item.InnerText.Replace("\r", "").Trim();
                        dt = DateTime.ParseExact(date, "dd.MM.yyyy", CultureInfo.InvariantCulture);
                        continue;
                    }

                    if (item.InnerHtml.Replace("\n", "").Trim().GetCssNode("td").Attributes["class"].Value == "result-tournament")
                    {
                        tournament = item.InnerText.Replace("\r", "").Trim();
                        continue;
                    }

                    var p1nm = item.InnerHtml.GetCssNode("td.result-player-left > a").InnerText.ExtractBetween('(', ')');
                    var p1tm = item.InnerHtml.GetCssNode("td.result-player-left").InnerText.Trim().ExtractBefore('(').Trim();

                    var htr = item.InnerHtml.GetCssNode("td.result-account > a > span").InnerText.ExtractBetween('(', ')');
                    var ftr = item.InnerHtml.GetCssNode("td.result-account > a").InnerText.ExtractBefore('(').Trim();

                    var p2nm = item.InnerHtml.GetCssNode("td.result-player-right > a").InnerText.ExtractBetween('(', ')');
                    var p2tm = item.InnerHtml.GetCssNode("td.result-player-right").InnerText.Trim().ExtractBefore('(').Trim();


                    r.Add(new MatchResult
                    {
                        Date       = dt,
                        Tournament = tournament,
                        Player1    = new CyberFootballPlayer
                        {
                            Name = p1nm,
                            Team = p1tm
                        },
                        Player2 = new CyberFootballPlayer
                        {
                            Name = p2nm,
                            Team = p2tm
                        },
                        HT = htr,
                        FT = ftr
                    });
                }

                h2h.Results = r.ToArray();
            }

            return(h2h);
        }