zoukankan      html  css  js  c++  java
  • 获取网站图片大小尺寸

    前一段时间研究了一下抓取网站的东东,有个很好的工具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 对象的时候很慢,要了解此情况的存在,布置好你的应用程序

  • 相关阅读:
    JUC学习笔记--从阿里Java开发手册学习线程池的正确创建方法
    1.初识Python
    学会 Debug
    如何找出nginx配置文件的所在位置?
    一个技术人,如何做到比别人更突出
    生产环境如何快速跟踪、分析、定位问题-Java
    如何优化代码中大量的if/else,switch/case?
    UML类图几种关系的总结
    DateUtils常用方法
    如何存储和表示数字—二进制(一)
  • 原文地址:https://www.cnblogs.com/jesse/p/659980.html
Copyright © 2011-2022 走看看