首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >ASP.NET下载网络图片

ASP.NET下载网络图片

作者头像
红目香薰
发布2022-11-29 15:41:26
发布2022-11-29 15:41:26
2.5K0
举报
文章被收录于专栏:CSDNToQQCodeCSDNToQQCode

直接上干货:

目录

获取页面中的图片或者MP3文件路径

保存网路图片

保存网络文字

获取页面中的图片或者MP3文件路径

代码语言:javascript
复制
        /// <summary>
        /// 获取网页中的图片路径list集合
        /// </summary>
        /// <param name="webUrl"></param>
        /// <returns></returns>
        public static List<string> GetPicUrl(string webUrl) {
            HttpClient http = new HttpClient();
            Task<string> task = http.GetStringAsync(webUrl);
            List<string> list = new List<string>();
            Regex reg = new Regex("src=\"[^\"]*[(.jpg)(.png)(.gif)(.bmp)(.ico)]\"");
            //Regex reg = new Regex("src=\"[^\"]*[(.mp3)]\"");
            MatchCollection mc = reg.Matches(task.Result);
            foreach (Match m in mc)
            {
                string src = m.Value;
                src = src.Replace("src=", "").Replace("\"", "");
                list.Add(src) ;
            }
            return list;
        }

保存网路图片

代码语言:javascript
复制
        /// <summary>
        /// 下载网络图片
        /// </summary>
        /// <param name="PicSourceUrl">网络图片地址</param>
        /// <param name="filePath">保存本地地址</param>
        /// <returns></returns>
        public static bool DownPic(string PicSourceUrl, string filePath)
        {
            WebRequest request = WebRequest.Create(PicSourceUrl);
            WebResponse response = request.GetResponse();
            Stream reader = response.GetResponseStream();
            FileStream writer = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.Write);
            try
            {
                byte[] buff = new byte[1024];
                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();
            }
            catch (Exception ex)
            {
                return false;
            }
            finally
            {
                if (writer != null)
                {
                    writer.Close();
                    writer.Dispose();
                }
                if (reader != null)
                {
                    reader.Close();
                    reader.Dispose();
                }
                if (response != null)
                {
                    response.Close();
                }
            }
            return true;

        }

保存网络文字

代码语言:javascript
复制
        /// <summary>
        /// 保存网络文字result到url中
        /// </summary>
        /// <param name="webUrl">网络文字的http地址</param>
        /// <param name="url">网络文字需要保存的地址</param>
        public static void SaveTxt(string webUrl,string url) {
            HttpClient http = new HttpClient();
            Task<string> task = http.GetStringAsync(webUrl);
            string result = task.Result;
            File.WriteAllText(@url, result);
        }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-10-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 获取页面中的图片或者MP3文件路径
  • 保存网路图片
  • 保存网络文字
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档