您的位置:首页 > 运维架构 > 网站架构

获取网站图片大小尺寸

2007-02-28 17:52 197 查看
前一段时间研究了一下抓取网站的东东,有个很好的工具wget,很多unix操作系统是默认安装的,也有windows版本的wgetwin,大家可以去g一下。
这两天又需要一个抓取网页图片的程序,设想可以通过分析网页源代码获取网页上图片的链接,然后跟踪这些链接获取图片信息,然后下载指定尺寸或大小的图片。
写了一段代码

private void PrintImg(string baseUrl,stringparamID)
{
this.Response.Clear();

string strUrl2=baseUrl+"icon/"+paramID+".gif";
System.Net.HttpWebRequest hwreq = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(strUrl2);
System.Net.HttpWebResponse hwrep= (System.Net.HttpWebResponse)hwreq.GetResponse();
System.Drawing.Image bmp = System.Drawing.Image.FromStream(hwrep.GetResponseStream());

System.IO.MemoryStream ms = new MemoryStream();
bmp.Save(ms,ImageFormat.Png);

Response.ClearContent(); //需要输出图象信息 要修改HTTP头
Response.ContentType = "image/gif";
Response.BinaryWrite(ms.ToArray());

this.Response.End();
}

不过通过虚拟路径抓取远程图片时,如果网络很慢或者连接不通的时候会发生异常
所以在GetResponse的时候:
try
{
System.Net.HttpWebResponse hwrep= (System.Net.HttpWebResponse)hwreq.GetResponse();
}
catch
{
throw new ApplicationException("network exception");
}

此方法在获取HttpWebResponse 对象的时候很慢,要了解此情况的存在,布置好你的应用程序
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: