最近做个项目,想实现这样一个功能:用户输入一个词条,如果百度百科用,就提取百度百科的词条然后显示出来,否则提示用户创建该词条。    这就涉及到网络爬虫的问题,求教。
    有现成的库用么?

解决方案 »

  1.   

    建议还是学一下http协议吧, 很简单的。我个人喜欢用socket, 当然也可以使用封装好的webrequest
      

  2.   


            WebClient client = new WebClient();
            client.Credentials = CredentialCache.DefaultCredentials;
            resStream = client.OpenRead(pageUrl);
                sr = new StreamReader(resStream, System.Text.Encoding.UTF8);
            strHtml = sr.ReadToEnd();
            resStream.Close();
            sr.Close();这样就可以抓到了
      

  3.   

    好像各位都是回答怎么读取一个HTML......
    关键问题是:输入一个词条,怎么可以知道百度百科中该词条的url地址?
      

  4.   

    当不存在词条时会转到页面 http://baike.baidu.com/notexists?word=XXX
    同时页面中会有百度百科尚未收录词条“XXX”。
    欢迎您来创建,与广大网友分享关于该词条的信息。根据这两条信息其中的一条就能判断是否创建词条
      

  5.   

    所有的网络请求都是 POST GET中的一种,你可以用抓包工具抓下包,在软件中发送词条搜索的POST数据到服务器自然就会返回相关的响应信息
      

  6.   

      参考
    http://dotnet.aspx.cc/article/0a6660ce-4138-41ef-b882-15db65564709/read.aspx
      

  7.   

      WebClient client = new WebClient();
      client.Credentials = CredentialCache.DefaultCredentials;
      resStream = client.OpenRead(pageUrl);
      sr = new StreamReader(resStream, System.Text.Encoding.UTF8);
      strHtml = sr.ReadToEnd();
      resStream.Close();
      sr.Close();这样就可以抓到了