Free code Lấy và download tất cả link hình ảnh từ đường dẫn website

[Mã code 32786]
  1 Đánh giá    Viết đánh giá
 209      2480      1382
Phí tải: Miễn phí
Danh mục
Thể loại
Nhóm code
Ngày đăng
21-10-2022
Loại file
Full code
Dung lượng
3 MB

In chào các bạn, bài viết hôm nay mình sẻ tiếp tục hướng dẫn các bạn cách get link tất cả hình ảnh từ một đường dẫn website trên lập trình C#, Winform.


MÔ TẢ CHI TIẾT

[C#] Download All Image From Link Website

Dưới đây là giao diện demo ứng dụng tải tất cả hình ảnh từ website:

  1. Đầu tiên, các bạn chọn đường dẫn vào và bấm nút Get Images => trả về danh sách các đường dẫn hình ảnh từ link URL.
  2. Tiếp đến các bạn bấm nút Download All để tải hình ảnh về ổ đĩa máy tính của bạn.
  3. Full source code Download Image C#:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.IO;
    using System.Linq;
    using System.Net;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace FetchAllImageFromWebsite
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
                System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
            }
    
            private void btnGetImages_Click(object sender, EventArgs e)
            {
                this.Cursor = Cursors.WaitCursor;
    
                listImages.Items.Clear();
    
                foreach (string image in FetchImages(txtURL.Text))
                {
                    listImages.Items.Add(image);
                }
    
                this.Cursor = Cursors.Default;
            }
    
            public List<string> FetchImages(string Url)
            {
                List<string> imageList = new List<string>();
             
                if (!Url.StartsWith("http://") && !Url.StartsWith("https://"))
                    Url = "http://" + Url;
               
                 var htmlDoc = new HtmlAgilityPack.HtmlWeb().Load(Url);
                var htmlData = htmlDoc.DocumentNode.OuterHtml;
                string imageHtmlCode = "<img";
                string imageSrcCode = @"src=""";
    
                int index = htmlData.IndexOf(imageHtmlCode);
                while (index != -1)
                {
                    //Remove previous data
                    htmlData = htmlData.Substring(index);
    
                    //Find the location of the two quotes that mark the image's location
                    int brackedEnd = htmlData.IndexOf('>'); //make sure data will be inside img tag
                    int start = htmlData.IndexOf(imageSrcCode) + imageSrcCode.Length;
                    int end = htmlData.IndexOf('"', start + 1);
    
                    //Extract the line
                    if (end > start && start < brackedEnd)
                    {
                        string loc = htmlData.Substring(start, end - start);
    
                        //Store line
                        imageList.Add(loc);
                    }
    
                    //Move index to next image location
                    if (imageHtmlCode.Length < htmlData.Length)
                        index = htmlData.IndexOf(imageHtmlCode, imageHtmlCode.Length);
                    else
                        index = -1;
                }
    
                //Format the image URLs
                for (int i = 0; i < imageList.Count; i++)
                {
                    string img = imageList[i];
    
                    string baseUrl = GetBaseURL(Url);
    
                    if ((!img.StartsWith("http://") && !img.StartsWith("https://"))
                        && baseUrl != string.Empty)
                        img = baseUrl + "/" + img.TrimStart('/');
    
                    imageList[i] = img;
                }
                return imageList;
            }
    
            private string GetBaseURL(string Url)
            {
                int inx = Url.IndexOf("://") + "://".Length;
                int end = Url.IndexOf('/', inx);
    
                string baseUrl = string.Empty;
                if (end != -1)
                    return Url.Substring(0, end);
                else
                    return string.Empty;
            }
    
            private void listImages_SelectedValueChanged(object sender, EventArgs e)
            {
                string curItem = listImages.SelectedItem.ToString();
                picImage.LoadAsync(curItem);
            }
    
            private void btnDownload_Click(object sender, EventArgs e)
            {
                var firstname = "";
                foreach(var item in listImages.Items)
                {
                    using (WebClient webClient = new WebClient())
                    {
                        try
                        {
                            string fileName = Path.GetFileName(new UriBuilder(item.ToString()).Path);
                            webClient.DownloadFile(item.ToString(), "images\\" + fileName);
                            firstname = fileName;
    
                        }
                        catch (Exception ex)
                        {
                            Console.WriteLine(ex.Message);
                        }
                      
                    }
                }
    
                ExploreFile(Application.StartupPath + $"\\images\\{firstname}");
    
    
            }
    
            public bool ExploreFile(string filePath)
            {
                if (!System.IO.File.Exists(filePath))
                {
                    return false;
                }
    
                filePath = System.IO.Path.GetFullPath(filePath);
                System.Diagnostics.Process.Start("explorer.exe", string.Format("/select,\"{0}\"", filePath));
                return true;
            }
        }
    }

 

 

HÌNH ẢNH DEMO

C# lấy ảnh,C# link ảnh từ web,C# lấy link ảnh,Link ảnh C#

C# lấy ảnh,C# link ảnh từ web,C# lấy link ảnh,Link ảnh C#

Nguồn: Sharecode.vn



HƯỚNG DẪN CÀI ĐẶT
 
 
LINK DOWNLOAD

codelayanh.rar [3 MB]

File đã kiểm duyệt
     Báo vi phạm bản quyền
Pass giải nén (Nếu có):
sharecode.vn
DOWNLOAD
(Miễn phí)
Bạn có code hay
ĐĂNG BÁN NGAY

CODE GẦN GIỐNG


BÌNH LUẬN



ĐÁNH GIÁ


ĐIỂM TRUNG BÌNH

5
1 Đánh giá
Code rất tốt (1)
Code tốt (0)
Code rất hay (0)
Code hay (0)
Bình thường (0)
Thành viên
Nội dung đánh giá
13:55 - 21/10/2022
Code rất tốt
Code rất tốt và phù hợp để phát triển

 HỖ TRỢ TRỰC TUYẾN