私は現在、C# 4.0 で書かれたスクレイパーに取り組んでいます。組み込みの WebClient や .NET の 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
例外を回避できますか?