当前位置:编程学习 > C#/ASP.NET >>

抓取网页内容插入数据库

抓取网页中a标签href连接内容和a标签内的内容 分别插入到数据库表字段中

href的连接必须是网址 --------------------编程问答-------------------- 不明白说的是什么 --------------------编程问答-------------------- 网上有很多例子

小偷程序

通常 webClient/ httpWebRequest  + Regex --------------------编程问答--------------------  http://down.chinaz.com/class/196_1.htm --------------------编程问答--------------------

/// <summary>
/// 通过节点名称以及节点的一个属性值在源码中过滤出相应的信息
/// </summary>
/// <param name="type"></param>
/// <param name="attribute"></param>
/// <param name="attributeName"></param>
/// <param name="paser"></param>
/// <returns></returns>
public NodeList getNodeListByAttribute(string nodeName, string attributeName, string attributeValue, Parser paser)
{
NodeList nodeList = null;
try
{
NodeFilter nodeFilter = new TagNameFilter(nodeName);
NodeFilter nameFilter = new HasAttributeFilter(attributeName, attributeValue);
AndFilter andFilter = new AndFilter(nodeFilter, nameFilter);
nodeList = paser.ExtractAllNodesThatMatch(andFilter);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
return nodeList;
}

NodeList nodeList = getNodeListByAttribute("a", "属性", "属性值", Parser.CreateParser(html, "utf-8"));
--------------------编程问答-------------------- 补充:
using Winista.Text.HtmlParser;
using Winista.Text.HtmlParser.Filters;
using Winista.Text.HtmlParser.Util;

引入这个Winista.HtmlParser.dll --------------------编程问答-------------------- httpclient类似的功能 --------------------编程问答--------------------
引用 4 楼 wdywqc 的回复:
C# code

    /// <summary>
        /// 通过节点名称以及节点的一个属性值在源码中过滤出相应的信息
        /// </summary>
        /// <param name="type"></param>
        /// <param name="attribute"></param>
        /// <para……

忘了。还差一个东西
string html = string.Empty;
using (StreamReader reader = new StreamReader("html路径或链接", Encoding.GetEncoding("utf-8")))
{
html = reader.ReadToEnd();
reader.Close();
} --------------------编程问答-------------------- wdywqc 的方法基本OK。
百度:C# 爬虫 
1、WebClient读取html
2、使用正则表达式过滤
3、存储 --------------------编程问答-------------------- lucene
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,