質問: dat.DocumentNode.InnerHtml; if (htm.Contains("Gold Coin and Bullion")) { File.WriteAllText(@"C:\Test\" + i + ".txt", htm); Console.WriteLine(i + " written"); } } ``` 私がページを右クリックして「ソースを見る」をクリックすると、「A.金貨と金塊」という行は表示されません。 `dat.DocumentNode.InnerHtml`は同じ結果を返します。テストフォルダにはファイルが書き込まれません。しかし、「ソースの表示」ではなく「要素の検査」をクリックするとすべての情報を見ることができます。 HtmlAgilityPackを使ってその行を取得するには?
回答: あなたが探しているデータが、ページの最初のダウンロード後にブラウザ内のjavascript(xhr)を介して読み込まれるため、ソースで見ることができない理由があります。 HtmlAgiligyPackは単なるHTMLパーサーであり、javascriptの実行と追加のリソースの読み込みをサポートしていません。これを行うには他にも方法がありますが、別のツールを使用する必要があります。これはおそらく開始するには良い場所です: DOMをロードし、.Netを使用してサーバーサイドでjavascriptを実行する