主要实现了通过HtmlParser 实现网页源文件的抓取以及分析,示例中包含了常用的几种操作,更多内容须大家一起完善,虽然本项目是用winform编写,但是其中的代码可以直接copy到web项目中 使用(已做过测试)。
asp.net采集网分析网页用它即可。
另注:需要添加这些引用(项目文件中已包含Winista.HtmlParser.dll的引用)
using Winista.Text.HtmlParser;
using Winista.Text.HtmlParser.Filters;
using Winista.Text.HtmlParser.Util;
using Winista.Text.HtmlParser.Tags;
string strHTML = GetUrl(this.textBox1.Text);
this.textBox2.Text = "";
//this.textBox2.Text = strHTML;
string strTMP = "";
Parser parser = Parser.CreateParser(strHTML, "gb2312");
AndFilter andimg = new AndFilter();
andimg.Predicates = new NodeFilter[] { new NodeClassFilter(typeof(ImageTag)) };
NodeList imglist = parser.ExtractAllNodesThatMatch(andimg);
if (imglist.Count > 0)
{
for (int j = 0; j < imglist.Count; j )
{
ImageTag img = (ImageTag)imglist[j];
strTMP = (img.GetAttribute("src")).ToString() img.ToHtml() "\r\n";
}
}
this.textBox2.Text = strTMP;
资源文件列表
HtmlParserDemo.sln , 932
HtmlParserDemo/Form1.cs , 5703
HtmlParserDemo/Form1.Designer.cs , 5513
HtmlParserDemo/Form1.resx , 5817
HtmlParserDemo/HtmlParserDemo.csproj , 4097
HtmlParserDemo/obj/Debug/DesignTimeResolveAssemblyReferences.cache , 1451
HtmlParserDemo/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache , 7100
HtmlParserDemo/obj/Debug/HtmlParserDemo.csproj.FileListAbsolute.txt , 701
HtmlParserDemo/obj/Debug/HtmlParserDemo.csproj.GenerateResource.Cache , 975
HtmlParserDemo/obj/Debug/HtmlParserDemo.exe , 12288
HtmlParserDemo/obj/Debug/HtmlParserDemo.Form1.resources , 180
HtmlParserDemo/obj/Debug/HtmlParserDemo.pdb , 24064
HtmlParserDemo/obj/Debug/HtmlParserDemo.Properties.Resources.resources , 180
HtmlParserDemo/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache , 7104
HtmlParserDemo/obj/Release/HtmlParserDemo.csproj.FileListAbsolute.txt , 831
HtmlParserDemo/obj/Release/HtmlParserDemo.csproj.GenerateResource.Cache , 975
HtmlParserDemo/obj/Release/HtmlParserDemo.csprojResolveAssemblyReference.cache , 9463
HtmlParserDemo/obj/Release/HtmlParserDemo.exe , 11264
HtmlParserDemo/obj/Release/HtmlParserDemo.Form1.resources , 180
HtmlParserDemo/obj/Release/HtmlParserDemo.pdb , 22016
HtmlParserDemo/obj/Release/HtmlParserDemo.Properties.Resources.resources , 180
HtmlParserDemo/Program.cs , 495
HtmlParserDemo/Properties/AssemblyInfo.cs , 1366
HtmlParserDemo/Properties/Resources.Designer.cs , 2880
HtmlParserDemo/Properties/Resources.resx , 5612
HtmlParserDemo/Properties/Settings.Designer.cs , 1101
HtmlParserDemo/Properties/Settings.settings , 249
HtmlParserDemo/_LIb/Winista.HtmlParser.dll , 196608
