首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

抓取全站的URL解决方法

2012-09-15 
抓取全站的URL要做WINFORM的一个小软件,输入网址,可以抓取该网站全站的所有超链接(首先抓取该页的所有超链

抓取全站的URL
要做WINFORM的一个小软件,输入网址,可以抓取该网站全站的所有超链接(首先抓取该页的所有超链接,然后循环判断这些超链接是否是属于本站的链接,如果属于继续进行抓取,直到把整个网站的URL都抓取出来)现在有个问题就是速度很慢,光是专区一个页面的超链接就要好几秒,跟不要说循环判断这些链接然后再抓取了,听说要用多线程,但是不知道怎么用?用在哪块地方?PS:抓取超链接是用正则表达式抓取的,感觉就是在获取这个网址的源代码的时候比较慢

[解决办法]
http://topic.csdn.net/u/20120818/12/8233f600-3601-4792-b104-9d45a225cc56.html这个是复制图片的,正则正在学习中,应该差不多原理,至于如何根据网址就能全选和复制的操作代码关注。。。。。。
[解决办法]
正则匹配效率的高低关键在于回溯次数,因此请确保最少的回溯

另外,我想如何利用HtmlDocument来解析的话,效率应该是比较高的

C# code
 WebBrowser webb = new WebBrowser();            webb.Navigate("about:blank");            HtmlDocument htmldoc = webb.Document.OpenNew(true);            htmldoc.Write(Htmlstring);            HtmlElementCollection htmlTR = htmldoc.GetElementsByTagName("a");            foreach (HtmlElement link in htmlTR)            {                 //.....            } 

热点排行