大学IT网 - 最懂大学生的IT学习网站! QQ资料交流群:367606806
当前位置:大学IT网 > C#技巧 > Jumony快速抓取网页

Jumony快速抓取网页

关键词:Jumony抓取网页快速抓取网页  阅读(2281) 赞(11)

[摘要]本文是对Jumony快速抓取网页的讲解,对学习C#编程技术有所帮助,与大家分享。

  Jumony是开源项目,目前源代码存放在GitHub ,源码地址:https://github.com/Ivony/Jumony。我测试使用的是Visual Studio 2012 ,测试网页为博客园。

  下面介绍使用方法:

  一、在新建项目后,需要将Jumony添加到项目中,你可以下载源码使用,也可以在NugGet 中 搜索 Jumony Core 将其添加到项目中并且后自动添加所需的引用。

  二、添加引用之后,即可写项目代码。(此处代码为获取 博客园首页文章内容)

  

  public string Html = string.Empty;//为将拼接好html字符串返回给前台代码
         protected void Page_Load(object sender, EventArgs e)
         {
var htmlSource = new JumonyParser().LoadDocument("http://www.cnblogs.com").Find(".post_item a.titlelnk"); int count = 0; foreach (var htmlElement in htmlSource) { count ++; Html += string.Format(" <li>{2}、&nbsp;&nbsp;<a href=\"About.aspx?Url={0}\" target=\"_blank\">{1}</a></li>", htmlElement.Attribute("href").Value(), htmlElement.InnerText(),count); } }

  效果图:

       

  三、下面就是要在点击上图从博客园抓取的文章标题之后,在显示博客全文(并非在打开博客园的文章)

    代码:   

   string html = Request["Url"];
             var htmlSource =
                 new JumonyParser().LoadDocument(html);
             HtmlText = htmlSource.Find(".postTitle2").FirstOrDefault().InnerText();
 
             Html = htmlSource.Find("#cnblogs_post_body").FirstOrDefault().InnerHtml();



效果图:
  到此,网页抓取写完了,没有什么深奥的道理,只是把他的使用方法简单的把代码贴出来了,还没有研究其源码,有时间需要深究一下。
  Jumony更多的使用方式请参见博客http://www.cnblogs.com/Ivony/p/3447536.html
  
  本次演示Jumony快速开发的代码如下(在百度云盘,请自行下载:):
    http://pan.baidu.com/s/1COuCI
  谢谢!


相关评论