在C#中捕获网络流量

时间:2012-03-08 21:15:43

标签: c# .net selenium fiddler winpcap

我正在使用Selenium,我希望捕获页面请求期间发送的所有cookie数据包。我遇到了Fiddler核心和其他一些衍生品,但似乎无法找到任何有用的例子。一直在努力,没有进展近10个小时,所以任何建议将不胜感激。

1 个答案:

答案 0 :(得分:4)

BrowserMob Proxy是(引用):

  

免费实用程序,可帮助Web开发人员监视和操作网络   来自其网络应用程序的流量

我共同编写了一个.NET库,使得使用该代理变得简单。该代码已在GitHub here上了,我在博客上发表了更多相关信息,示例代码为here。因此,使用这两个组件和Selenium,希望您能获得所需的信息。

信息以HAR格式提供,您可以看到here的详细信息。基本上,对于请求/响应,您可以检索网络内容,cookie,时间等所有信息。

希望这是你追求的那种。

e.g。迭代每个HAR日志条目的每个请求cookie的基本示例:

foreach(var entry in harData.Log.Entries)
{
    foreach (var cookie in entry.Request.Cookies)
    {
        string name = cookie.Name;
        string value = cookie.Value;

        // Do something exciting....or just write the values to Console :)
        Console.Write("Cookie name={0}, value={1}, name, value);
    }
}