我在做一个爬虫,用来爬网页,并不是爬电影的文件,可是爬虫在爬链接进会把http://www.sina.com/a.wmv加入进去,这种明文的我们当然是可以处理掉的,但是暗文的,如http://www.sina.com/video?id=1我们是没有办法的只有在下载这个页面时才能处理,我的问题是如何判定这个页面是一种媒体文件,或者说当文件大于10M时,我们就可忽略这个文件的采集
判断数据类型并不困难,只要判断 Response 的Headers就可以得到数据的类型
方法如下
HttpWebRequest _MyRequest = null;
HttpWebResponse _MyResponse = null;
中间的过程我省略的,太多地方有描述了,我想楼主也一定很清楚了,就直接切入正题了。
_MyResponse = (HttpWebResponse)_MyRequest.GetResponse();
WebHeaderCollection _ResponseHeaders = _MyResponse.Headers;
string _ContentType = _ResponseHeaders["Content-Type"];
这里的 _ContentType 就是数据的类型,一般.wmv 应该是stream具体的楼主测试一下就可以了。另外通过
_ResponseHeaders["Content-Length"]; 还可以得到数据的大小