挖掘Internet网络域名拓扑图
DomainWalker 可以用于发现一个URL开始,各级的网络拓扑图。与传统的网络爬虫/蜘蛛和网站下载器不同,它只关心URL的域名,因而可以发掘一个网站开始的逐级拓扑。
DomainWalker 中使用了WebResourceProvider和StringParser两个开源的类,执行的具体代码在线程中执行,以保证界面的可操作性。

[如何使用]
1. 初始化DomainWalker 实例
// Initialize the DomainWalker
DomainWalker dw = new DomainWalker();
dw.StartUrl = "www.ravib.com";
dw.MaxDepth = 3;
2. 挖掘
// Do walk
dw.walk();
3. 获取结果
// Get results
HashTable domainTree = dw.DomainTree;
printHashTableAsTree (domainTree); // left as an exercise to the reader
DomainTree 属性
DomainWalker的结果是一个树,每个树节点包括了一个HASH表。

事件
每个URL被发现时,会执行OnNotifyUrlBeingTraversed 事件,而当所有挖掘结束之后,会触发OnNotifyWalkCompleted 事件。
具体定义见源代码。