【发布时间】:2014-08-12 19:23:39
【问题描述】:
假设我有如下的根 url
http://www.monstermmorpg.com
现在我将展示几个 url 示例以及如何获取目标
url1: http://www.monstermmorpg.com/
url2: http://www.monstermmorpg.com/Register#21312
url3: Register#21312
url4: /Register
url5: Register
url6: /Register?news=true&news2=true
// there may be more that goes to same url but i don't have full list atm
我需要一个函数,它会在 root url 的帮助下产生以下 url
url1: http://www.monstermmorpg.com
url2: http://www.monstermmorpg.com/Register
url3: http://www.monstermmorpg.com/Register
url4: http://www.monstermmorpg.com/Register
url5: http://www.monstermmorpg.com/Register
url6: http://www.monstermmorpg.com/Register?news=true&news2=true
有这种方法,但我认为没有更好的方法是不够的?
C# .net 4.5 WPF 应用程序
Uri baseUri= new Uri("http://www.contoso.com");
Uri myUri = new Uri(baseUri,"catalog/shownew.htm?date=today");
Console.WriteLine(myUri.AbsoluteUri);
【问题讨论】:
-
你需要爬取所有的url,还是只提取价值?如果是这样,正则表达式模式会做到这一点
-
如果你知道你有一个基本的 URI 和一个相对路径,那么这个构造函数是合适的。如果您认为它可能会失败,请使用Uri.TryCreate
标签: c# wpf uri web-crawler