注册本站  论坛  繁體中文

电脑技巧
手机 | MP3 | MP4 | 显卡 | 主板 | 显示器 | 光存储 | 笔记本 | 网络设备 | 移动存储 | 数码相机
键鼠 | CPU | 音箱 | GPS | 电视 | 服务器 | 投影机 | 机箱电源 | 品牌电脑 | 办公打印 |
| 网站首页 | Cisco | Windows | Linux | Java | Dotnet | Oracle | 网页设计 | 平面设计 | 安全 | 软件应用 | 电脑维修 | 办公维修 |
您现在的位置: 电脑技巧 >> Dotnet >> ASP.NET >> Dotnet正文

WebClient的DownloadFile方法批量下载图片

文章来源:中国IT实验室收集整理 作者:佚名 更新时间:2008-5-25 3:56:35 【 】 【加入收藏

    有时,我们看到比较好的漂亮图片壁纸,风景图画等,可能需要从固定的网址下载图片。如果一个网页一个网页地打开然后另存为我们的文件名,很费时。有没有批量下载的办法呢?有的!但前提是:图片的路径及文件名有规律。

    当然,你可以使用网际快车或迅雷的批量下载功能,不在本文讨论之列。

    这里利用了 WebClient的DownloadFile方法,由于代码比较简单,我就不多说。

    // BatchDownload.aspx
    <%@ Page Language="C#" AutoEventWireup="true"  CodeFile="BatchDownload.aspx.cs" Inherits="_Default" Debug="true" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>批量图片下载网页</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
        </div>
        </form>
    </body>
    </html>


    // BatchDownload.asp.cs

    using System;
    using System.Data;
    using System.Drawing;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.IO;
    using System.Net;
    using System.Text;

    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            StringBuilder sb = new StringBuilder();
            int m = 0;
            for (int i = 1; i < 200; i++)
            {
                for (int j = 1; j < 100; j++)
                {
                 string folder;
                 if(i < 100)
                 {
                     folder = i.ToString("000");
                 }
                 else
                 {
                     folder = i.ToString("0000");
                 }
                string uriString = "http://www.photodownloadsite.com/200702/" + folder + @"/" + j.ToString() + @".jpg";
                Uri address = new Uri(uriString);
                string fileName = "a" + i.ToString("000") +  m.ToString("00000") + ".jpg";

                WebClient wc = new WebClient();
                try
                {
                    //Bitmap bmp = new Bitmap(wc.OpenRead(address));
                    wc.DownloadFile(address, Server.MapPath(fileName));
                }
                catch (Exception exc)
                {
                }
                finally
                {
                    if (wc != null) wc.Dispose();
                }
                //sb.Append(uriString + "<br/>" + Server.MapPath(fileName) + "<br/>");
                //sb.Append("<img src='" + uriString + "'><br/>");

                    m++;
                }
            }
              //Label1.Text = sb.ToString();
        }
    }

    这里出一个思考题:
    如果想要下载图片高度、宽度大于某个指定尺寸大小的图片呢,应该如何做?想一想。实际上,上面这句已大致提示了相关的做法了://Bitmap bmp = new Bitmap(wc.OpenRead(address));

    这里不妨再引申一下:
    如果需要即时获取如下图类似的股票价格图,又如何做呢?

  • 上一篇Dotnet:

  • 下一篇Dotnet:
  • 最 新 热 门
     asp根据表单自动生成sql语句的函数
     ASP教程:自己写的数据库操作类
     ASP处理多关键词查询实例代码
     asp文件打不开的原因
     IIS7.0在Vista系统下安装注意事项
     XMLHTTP Post Form时的表单乱码
     xmlhttp是如何完成异步操作的
     VB.Net处理MySQL中二进制问题
     VB.NET的常量与枚举学习
     VB.NET字符数据类型和其他数据类型
    最 新 推 荐
     ASP.NET中防止注入攻击
     Asp.NET大文件上传组件---提取文件内容
     asp.net 控件开发(一)---显示控件内容
     asp.net控件开发(二)-简单属性
     asp.net控件开发(一)-显示控件内容
     Asp.net—递归方式的FindControl
     输出枚举数据时需要将其转换为整型?
     ASP.NET2.0中Gridview中数据操作技巧
     ASP.NET中广告控件AdRotator的使用方法
     Asp.NET大文件上传开发总结(一)
    相 关 文 章

    .NET Web开发震撼之变:.NET MVC框架
    Web.config详解+asp.net优化方法
    用ASP技术开发WEB调查投票系统
    Silverlight初试牛刀 微软下一代Web技术
    XML WebService实例详细解析
    根据托管类库创建WebService代码
    使用ASP.NET 2.0中的ReportViewer控件
    XML在Web中的应用
    c#.net在WEB页中设置COOKIES
    WEB页面工具语言XML(二)定义

    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告

     

    Copyright 2006-2008 pcjx.com All Rights Reserved
    电脑技巧 版权所有 粤ICP备06059145号 地图
    本网站所有内容未经许可不得转载或做其他使用