예제 #1
0
파일: Form1.cs 프로젝트: muhamed7/Scraper-
        List <Diseases_destails_tbl> GetData2(string Link)
        {
            Link            = "https://icd.codes" + Link;
            webBrowser1.Url = new Uri(Link);

            WebClient client = new WebClient();

            string content = client.DownloadString(Link);

            HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
            doc.LoadHtml(content);

            List <Diseases_destails_tbl> dt = new List <Diseases_destails_tbl>();
            //DataTable dt = new DataTable();
            //dt.Columns.Add("Code");
            //dt.Columns.Add("Name");
            //dt.Columns.Add("link_data");

            var n2 = doc.DocumentNode.SelectNodes(xpath: "//div[@id='content']/div[@class='panel-group']");

            foreach (HtmlNode table in n2)

            {
                foreach (HtmlNode row in table.SelectNodes("div[@class='panel panel-default']/div[@class='panel-heading collapse-next-tree']"))
                {
                    //DataRow r2 = dt.NewRow();
                    Diseases_destails_tbl destails = new Diseases_destails_tbl();
                    int i = 0;

                    HtmlNode cells = row.SelectSingleNode("a[@class='collapse-next collapsed']/h4/span");
                    string   span  = cells.InnerText;

                    HtmlNode codenode = row.SelectSingleNode("a[@class='collapse-next collapsed']/h4/b");
                    string   code     = codenode.InnerText;

                    HtmlNode coden = row.SelectSingleNode("ul[@class='list-group  collapse]/li/a");
                    string   codes = coden.InnerText;
                    //r2[0] = span;
                    //r2[1] = code;
                    //r2[2] = codes;
                    //dt.Rows.Add(r2);
                    destails.Name      = span[0].ToString();
                    destails.Code      = code[1].ToString();
                    destails.Link_data = code[2].ToString();

                    //destails.Diseases_fk = Diseases_fk;
                }
            }
            dt.RemoveAt(0);
            return(dt);
        }
예제 #2
0
파일: Form1.cs 프로젝트: muhamed7/Scraper-
        private List <Diseases_destails_tbl> GetData5(string content)
        {
            HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
            doc.LoadHtml(content);

            List <Diseases_destails_tbl> dt = new List <Diseases_destails_tbl>();
            //DataTable dt = new DataTable();
            //dt.Columns.Add("Name");
            //dt.Columns.Add("Code");
            //dt.Columns.Add("link_data");


            var n = doc.DocumentNode.SelectNodes(xpath: "//ul/li[@class='list-group-item']");

            if (n != null)
            {
                foreach (HtmlNode table in n)
                {
                    Diseases_destails_tbl destail = new Diseases_destails_tbl();
                    //DataRow r = dt.NewRow();
                    HtmlAgilityPack.HtmlDocument docu = new HtmlAgilityPack.HtmlDocument();
                    docu.LoadHtml(table.InnerHtml);

                    HtmlNodeCollection CodeName  = docu.DocumentNode.SelectNodes("//a");
                    HtmlNodeCollection LabelName = docu.DocumentNode.SelectNodes("//span");
                    var code      = CodeName == null ? "" : CodeName.FirstOrDefault().InnerText;
                    var Name      = LabelName == null ? "" : LabelName.FirstOrDefault().InnerText;
                    var Link_data = CodeName == null ? "" : CodeName == null ? "" : CodeName.FirstOrDefault().Attributes["href"].Value;
                    //destail.Diseases_fk = Diseases_fk;
                    destail.Code      = code;
                    destail.Name      = Name;
                    destail.Link_data = Link_data;

                    dt.Add(destail);
                }
            }
            return(dt);
        }