HTMLアジリティパックでAJAXを介して生成されたhtmlを取得するにはどうすればよいですか?

ajax asp.net c# html html-agility-pack

質問

私はWebページを解析しようとしています。 AJAX、 WebClient.DownloadStringを介して生成されたそのページの一部AJAX経由で生成されたコード以外のHTML全体を取得できますか?誰かが私を助けてくれますか?

私のコードは:

var client = new WebClient();
client .Headers.Add(HttpRequestHeader.UserAgent, "UserAgent,Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0.1");
client.Headers.Add(HttpRequestHeader.Cookie, "USER_PW=xxxxxxxxx; PHPSESSID=xxxxxxxxxxxxxxxxxx");
var html = client.DownloadString("xxxxxxxxxx");

私は欠員のリストが必要です...

受け入れられた回答

AJAXを介して生成されたコンテンツを取得することは可能ですが、それは まっすぐ進むべきタスクではありません。ページソース(右クリックして表示ページソースと同じことがわかる同じもの)

ajaxコンテンツを取得するには、AJAX呼び出しがヒットしたURLを書き留めてから、このURLをもう一度呼び出してコンテンツを取得する必要があります。 You can get this if you inspect the Network Tab of the developer window in any browserたり、その中のjavascriptコードYou can get this if you inspect the Network Tab of the developer window in any browserます。

短所:これはまた、AJAX呼び出しの応答を取得するだけで、javascriptがこの応答を操作している場合(json応答から表を作成する場合など)はどうなるでしょうか?これを手作業で行う必要があります。

つまり、結果がHTMLになるように、JavaScriptと同じロジックをコーディングすることになります。これは、エラーのために多くの苦労と多くの穴があるようです。

利点:あなたが関心を持っているのは、HTML内のデータ(ウェブサイトデータベースのデータのようなもの)だけであり、正確なHTML自体ではない場合、このアプローチはあなたのために働くでしょう。



Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow