Ejemplo n.º 1
0
        public static void SearchForSeries(string Query)
        {
            HtmlWeb      htmlWeb      = new HtmlWeb();
            HtmlDocument htmlDocument = htmlWeb.Load("http://www.imdb.com/find?" + "q=" + Query + "&s=tt&ttype=tv");

            HtmlNodeCollection resultNodes = htmlDocument.DocumentNode
                                             .SelectNodes("//*[contains(concat(' ', normalize-space(@class), ' '), ' result_text ')]");

            int nodeNumber = 0;

            for (int i = 0; i < 10; i++)
            {
                ResultSeries currResult = new ResultSeries();
                string       innerHtml  = resultNodes[nodeNumber].InnerHtml;

                Regex           propertyRegex  = new Regex("/tt([0-9]+).*>(.*)<.*\\(([0-9]+)\\).*\\((.*)\\)(?:.*>\"(.*)\"<)?");
                GroupCollection propertyGroups = propertyRegex.Match(innerHtml).Groups;

                if (propertyGroups[4].Value == "TV Movie" || propertyGroups[4].Value == "TV Short")
                {
                    i--;
                }

                else
                {
                    currResult.id        = propertyGroups[1].Value;
                    currResult.name      = propertyGroups[2].Value;
                    currResult.startYear = propertyGroups[3].Value;
                    currResult.type      = propertyGroups[4].Value;
                    currResult.aka       = propertyGroups.Count > 5 ? propertyGroups[5].Value : "";

                    Variables.ResultSeriesList.Add(currResult);
                }

                if (nodeNumber == resultNodes.Count - 1)
                {
                    break;
                }

                nodeNumber++;
            }

            return;
        }
Ejemplo n.º 2
0
        public static DataTable CreateTable()
        {
            DataTable seriesTable = new DataTable();

            seriesTable.Columns.Add("#", typeof(int));
            seriesTable.Columns.Add("IMDB id", typeof(string));
            seriesTable.Columns.Add("Name", typeof(string));
            seriesTable.Columns.Add("AKA", typeof(string));
            seriesTable.Columns.Add("Year", typeof(string));
            seriesTable.Columns.Add("Type", typeof(string));

            for (int i = 0; i < Variables.ResultSeriesList.Count; i++)
            {
                ResultSeries currSeries = Variables.ResultSeriesList[i];

                seriesTable.Rows.Add(i + 1, currSeries.id, currSeries.name, currSeries.aka,
                                     currSeries.startYear, currSeries.type);
            }

            return(seriesTable);
        }