c# 下载网页图片
也是比较老的东西了
最近用到
记录下以免以后忘了
要下载图片首先要有图片地址
要有图片地址就要先把网页下下来分析下URL
下载网页一般用两种方法
using System.Net;
using System.Windows.Forms;
string url = "http://www.cnblogs.com";
string result = null;
try
{
WebClient client = new WebClient();
result = client.DownloadString( url );
}
catch (Exception ex)
{
MessageBox.Show( ex.Message );
}
using System.Net; using System.IO; using System.Windows.Forms; string result = null; string url = "http://www.cnblogs.com"; WebResponse response = null; StreamReader reader = null; try { HttpWebRequest request = (HttpWebRequest)WebRequest.Create( url ); request.Method = "GET"; response = request.GetResponse(); reader = new StreamReader( response.GetResponseStream(), Encoding.UTF8 ); result = reader.ReadToEnd(); } catch (Exception ex) { MessageBox.Show( ex.Message ); } finally { if (reader != null) reader.Close(); if (response != null) response.Close(); }
至于怎么找图片url略过,直接说下载图片吧
其实和上面一样,也有两种方法:
1,WebRequest和WebResponse
WebRequest request = WebRequest.Create("http://images.cnblogs.com/logo_small.gif"); WebResponse response = request.GetResponse(); Stream reader = response.GetResponseStream(); FileStream writer = new FileStream("x:\\pic.jpg", FileMode.OpenOrCreate, FileAccess.Write); byte[] buff = new byte[512]; int c = 0; //实际读取的字节数 while ((c=reader.Read(buff, 0, buff.Length)) > 0) { writer.Write(buff, 0, c); } writer.Close(); writer.Dispose(); reader.Close(); reader.Dispose(); response.Close();
2,WebClient
string url = "http://images.cnblogs.com/logo_small.gif"; string filepath = "x:\\pic.jpg"; WebClient mywebclient = new WebClient(); mywebclient.DownloadFile(url, filepath);
大体就这么多…
作者:sun8134
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库