我想做个批量下载主流博客文章的软件,请大家指点下。
应该如何去获取文章呢?

解决方案 »

  1.   

    response 回来源码, 然后就正则提取, 
      

  2.   

    爬虫
    从一个网页入口,分析链接,一层一层的遍历,或者从一组网页入口,或者从一个rss源列表开始爬rss;  
    获取每个页面的源码保存在磁盘或者数据库里;  
    遍历抓下来的网页进行处理,比如提取正文,消重等;  
    根据用途把处理后的文本进行索引、分类、聚类等操作
    参考
    爬虫
      

  3.   

    可以先看下主流博客的源码结构,然后你利用url获取各个所需节点的内容,然后在本机整理。
      

  4.   

    利用WEBBROWSER加载这个网页,然后利用DOM来获取
      

  5.   

    我看了下主流博客的html,貌似正文的标签都不一样哦,这样是不是还要做出一个对应的列表呢?
      

  6.   


    using System;
    using System.Collections.Generic;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Net;
    using System.IO;
    using System.Text;public partial class GetBlogContent : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {    }
        protected void Button1_Click(object sender, EventArgs e)
            
        {
            string gurl = TextBox1.Text.Trim();
            //WebRequest request = WebRequest.Create(gurl);
            //WebResponse response = request.GetResponse();//返回对 Internet 请求的响应。
            //Stream resStream = response.GetResponseStream();//返回从 Internet 资源返回数据流
            //StreamReader sr = new StreamReader(resStream, System.Text.Encoding.Default);//实例华一个流的读写器
            //ContentHtml.Text = sr.ReadToEnd();//这就是百度首页的HTML哦 ,字符串形式的流的其余部分(从当前位置到末尾)。如果当前位置位于流的末尾,则返回空字符串 ("")
            //resStream.Close();//关闭当前流并释放与之关联的所有资源
            //sr.Close(); //关闭 System.IO.StreamReader 对象和基础流,并释放与读取器关联的所有系统资源        WebClient wc = new WebClient(); // 创建WebClient实例提供向URI 标识的资源发送数据和从URI 标识的资源接收数据
            wc.Credentials = CredentialCache.DefaultCredentials; // 获取或设置用于对向 Internet 资源的请求进行身份验证的网络
            Encoding enc = Encoding.GetEncoding("GB2312"); // 如果是乱码就改成 utf-8 / GB2312
            Byte[] pageData = wc.DownloadData(gurl); // 从资源下载数据并返回字节数组。
            ContentHtml.Text = enc.GetString(pageData); // 输出字符串(HTML代码),ContentHtml为Multiline模式的TextBox控件
        }
    }