C#HttpWebRequest获取总页面大小
您好,我正在尝试使用HttpWebRequest从图像脚本等获取整个页面大小。如果一个用户通过web浏览器访问该页面,我需要计算该页面的总流量。内容长度为我提供了以字节大小为单位的内容长度。它实际上是文档长度。但是我需要从图片和脚本中获取所有流量 这是到目前为止我的代码C#HttpWebRequest获取总页面大小,c#,.net,C#,.net,您好,我正在尝试使用HttpWebRequest从图像脚本等获取整个页面大小。如果一个用户通过web浏览器访问该页面,我需要计算该页面的总流量。内容长度为我提供了以字节大小为单位的内容长度。它实际上是文档长度。但是我需要从图片和脚本中获取所有流量 这是到目前为止我的代码 NetworkCredential cred = new NetworkCredential("username", "password"); HttpWebRequest request = (HttpWebRequest)W
NetworkCredential cred = new NetworkCredential("username", "password");
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
request.Proxy = new System.Net.WebProxy("proxy", true);
request.Proxy.Credentials = cred;
request.UserAgent = @"Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5";
using (HttpWebResponse requestresponse = (HttpWebResponse)request.GetResponse())
{
Headers = requestresponse.Headers;
Url = requestresponse.ResponseUri;
int ContentLength;
if (int.TryParse(response.Headers.Get("Content-Length"), out ContentLength))
{
//This is One way i get the content leangth
WebPageSize = ContentLength;
}
//This is another way i get the content leangth
WebPageSize = request.ContentLength;
return ProcessContent(requestresponse);
}
另外,我也不保证服务器会回复标题内容长度
有什么建议吗?如果您只需要检查一下大小,为什么不尝试使用Firebug(Firefox扩展)的网络面板或其他浏览器的等效工具?它将告诉您加载网页时执行的所有请求的大小。如果您是进行测量的人并且可以保证不会有其他网络流量,您可以尝试以下操作: 从IPV4统计中获取TotalBytesReceived 在WebBrowserControl中打开页面,等待所有资源加载完毕 再次获取总字节数 根据这两个数字,您可以计算总大小 以下是一篇关于使用IPV4统计信息的文章:
你所说的页面流量是什么意思?你想计算你的网页的总访客数吗?不,我需要检查是否有一个用户登录该页面,然后页面将处理多少流量才能全部加载。我需要网页的总大小及其图像、javascripts和css以及所有loadig trafic需求,因为我需要以自动方式为许多页面制作一个工具,因此关于您的代码,在下载html页面后(只需调用HttpWebResponse对象的GetResponseStream)您可以解析html并获取相关资源(css、javascripts、images..)。是的,这是一个选项,可以逐个解析所有资源。但是我在考虑webBrowser控件,这个控件是否有可能计算解析的内容图像js的总大小??