码迷,mamicode.com
首页 > Web开发 > 详细

.net新手爬虫教学,简单易懂。

时间:2017-07-26 17:59:40      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:normal   object   send   代码   搜索   code   uil   简单   elements   

这两天没事研究爬虫,发现了好多处理方法,但是我用着最顺手的是Nsoup这个包。

下面给大家分享一下我在亚马逊上爬取的数据。我是用的webForm写的,用winForm是一样的。今天给打加分享一下我写的代码。希望得到打什么的指点。

 System.Net.CookieContainer testcookie = new System.Net.CookieContainer();
    protected void Button1_Click(object sender, EventArgs e)
    {
        string htnmStr = GetPost.Get(this.TbUrl.Text.Trim(), testcookie, Encoding.UTF8);
        this.TbCode.Text = htnmStr;
    }

上面是下载整个网页信息的,这种代码网上有很多开源的,我这里是自己写了一个类。

 protected void Button2_Click(object sender, EventArgs e)
    {
         NSoup.Nodes.Document htmlDoc = NSoup.NSoupClient.Parse(this.TbCode.Text);

         NSoup.Select.Elements ele = NSoup.NSoupClient.Parse(TbCode.Text).GetElementsByClass("s-result-item");
                System.Text.StringBuilder sb = new StringBuilder();
                sb.Append("<ul>");
                    for (int i = 0; i < ele.Count; i++)
                    {                                                                 
                        string xingji = ele[i].Select(".a-icon-alt").Html();
                        string shuliang=ele[i].Select(".a-span5").Select(".a-spacing-mini").Select("a").Select(".a-size-small").Html();
                        Regex reg = new Regex("[1-9]\\d*.\\d*|0.\\d*[1-9]\\d*");
                        Match match = reg.Match(xingji);
                        Regex reg1 = new Regex("^\\d+(,\\d+)*$");
                        Match match1 = reg1.Match(shuliang);
                        sb.Append("<li>标题:" + ele[i].Select(".a-size-medium").Html() + "</br>产品图片:" + ele[i].Select(".s-access-image").Attr("src") + "</br>卖家名称:" + ele[i].Select(".a-fixed-left-grid-col").Select("span").Eq(1).Html() + "</br>主图地址:" + ele[i].Select(".a-link-normal").Attr("href") + "</br>星级:" + match + "</br>评价数量:" + match1 + " </br>ASIN:" + ele[i].Attr("data-asin") + "<li>");
                    }
                    sb.Append("</ul>");  
                TbElement.Text = sb.ToString();
           
            
        }

上边的代码是我爬取的亚马逊内容也得标题,店家名称,产品图片等一些数据,通过类名去搜索。简单易懂 适合一些刚入门的人看。。。。。。。。。。。。。。。。我也是刚入门,又不会的可以问我,,一起讨论,研究

.net新手爬虫教学,简单易懂。

标签:normal   object   send   代码   搜索   code   uil   简单   elements   

原文地址:http://www.cnblogs.com/enyi/p/7239814.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!