質問: よくあるサイトでは、 1. ページを開く 2. javascriptが実行されてurlをAjaxでPOSTし、データをjsonで取得する という流れが多いです。 このjsonデータをC#で取得することは可能でしょうか? C#のWebBrowserオブジェクトでそのようなサイトにアクセスしています。 WebBrowserオブジェクトなのでhtmlを取得することはできますが、jsonデータを取得する方法がわかりません。 この方法をお教えいただけると助かります。 またはページにアクセス後にjavascript実行でPOSTするurlがわかれば、そのurlを再度送信すればjsonデータだけ取得できるのはわかっています(送信時にCookieを付与して送信する必要がありますが)。 上記どちらかの方法、または別の方法でjsonデータを取得する方法を教えていただきたいと思います。 どうぞよろしくお願い致します。 開発環境 Visual Studio 2015 C#
回答: FiddlerCoreというライブラリを利用できます。 簡単に言うと、プロキシサーバを立てて、HTTP通信を覗き見するという方法です。 某戦艦が女の子になって戦うゲームの専用ブラウザなどはこれを使用しているようです。 ただし、正しくネットワーク設定しないと悪意を持ったユーザの踏み台にされ、 突然警察のお世話になるなんてことが無いとは言い切れないので、慎重に調べて利用してください。 強力なライブラリですので、使い方は調べればそれなりに出てくると思います。