標籤: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新手爬蟲教學,簡單易懂。