我目前正在研究用 C# 4.0 编写的刮板。我使用各种工具,包括 .NET 的内置 WebClient 和 RegEx 功能。对于我的刮板的一部分,我正在使用 HtmlAgilityPack 解析 HTML 文档。我让一切按我的意愿工作,并进行了一些代码清理。
我正在使用该HtmlEntity.DeEntitize()
方法来清理 HTML。我做了一些测试,该方法似乎效果很好。但是当我在我的代码中实现该方法时,我不断得到KeyNotFoundException
. 没有更多细节,所以我很迷茫。我的代码如下所示:
WebClient client = new WebClient();
string html = HtmlEntity.DeEntitize(client.DownloadString(path));
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);
下载的 HTML 是 UTF-8 编码的。我怎样才能绕过KeyNotFound
异常?