日期:2014-05-17 浏览次数:20751 次
由于提前到了学校,昨晚逛博客园的时候,意外发现了HtmlAgilityPack这个好东东,是微软的一个类库,用来分析Html页面的结构啊,等等。。。。。不得不说,HtmlAgilityPack很强大,
我用的很爽啊。。。。
抓取博客园的数据啊等等。。。(我搜了一些,发现仅仅是抓取文字的文章,于是一个邪恶的念头出现咋我脑海中,我就好奇的试了试。一番折腾后,结果是可行的啦,发给我以朋友试了试,结果可以,。。。
语无伦次了。。。(别见怪啊啊))
?????????????????????????????????????????? 记住哦!,在E盘下新建一个DownLoadImg文件夹
主要代码如下:
WebClient wc = new WebClient(); private static int i = 0; protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { HtmlWeb web = new HtmlWeb(); string imgurl = ""; //目前一般XX(你懂的...)网站,都是以.../版块/yyyymmdd/一堆数字.html结尾 //由于XX网站一般分为好几个版块,所以每个.html文件在同一版块下并不是连续的 //我用了外层两层循环,最外层循环yyyymmdd(日期如2012-02-15) //内层是循环每个.html文件,当然你可以自己修改两个循环 for (int k = 20120215; k <= 20120215; k++) { for (int j = 124289; j <= 124306; j++) { string cnblogs = "";//看这里,需要填写某一网站的格式,在源码下载里有 HtmlDocument doc = web.Load(cnblogs); HtmlNode node = doc.GetElementbyId("ks_xp"); if (node == null) { continue; } else { foreach (HtmlNode child in node.SelectNodes("//img")) { if (child.Attributes["src"] == null) continue; imgurl = child.Attributes["src"].Value.ToString(); DownLoadImg(imgurl);