尝试使用 HtmlAgilityPack 从 url 加载非法字符异常

Illegal chars exception trying to load from url with HtmlAgilityPack

我正在尝试使用以下代码加载网页:

Dim DirectPage As New HtmlAgilityPack.HtmlDocument
DirectPage.Load(mUrl)

mUrl 是一个字符串,包含页面的完整 url。

url正确!
我试着 copy/paste 它进入我的浏览器,它显示了正确的网页。

我也试过 WebRequest.Create(mUrl) 并且成功了。
所以我的问题是:
1) 为什么 HtmlAgilityPack 不接受 mUrl?
2) "illegal chars" 是什么?有没有他们的名单?
3) 有没有办法让 HtmlAgilityPack 代码正确工作?

那是因为 HtmlAgilityPack.HtmlDocument.Load 方法采用实际的 html 而不是 URL。如果要加载页面,请使用 HtmlWeb.Load(url)

另一种选择

 Dim wC As New WebClient() 
 DirectPage.Load(wC.OpenRead(mUrl))