Tìm kiếm


    Crawl Data (Trích xuất dữ liệu) Website với C# Phần 2


    Giới thiệu

    Ở bài viết Crawl Data (Trích Xuất Dữ Liệu) Website Với C# Phần 1 mình đã hướng dẫn các bạn về cách Crawl Data từ Website https://fridayshopping.vn. Bài viết đó mình chỉ Crawl Data cho từng page và dữ liệu Crawl được cũng khá ít thông tin.

    Vậy nên hôm nay mình sẽ chia sẻ với các bạn Tool nâng cao hơn. Cụ thể đã được cải tiến những gì so với Tool trước đó. Cùng mình khám phá nhé !

    #Note: Ở bài viết này mình sẽ chỉ tập trung giải thích về chức năng, cách sử dụng, và các chức năng đã được cải tiến thôi nhé

    Các tính năng chính

    • Crawl tất cả các sản phẩm bao gồm: hình ảnh, hãng sản xuất, miêu tả sản phẩm...
    • Lưu data xuống Database

    Giải thích code

    • ./Functions/ConsoleSpinner.cs: Class này có nhiệm vụ in ra cái chữ loading cho nó đẹp thôi, không quan trọng :D
    • ./Helpers/DownloadHelper.cs: Xử lý việc download hình ảnh từ URI
    • ./Helpers/CrawlerHelper: Customize lại một số hàm thuận tiện cho việc Crawl
    • ./Helpers/StringHelper.cs: Xử lý các chuối
    • ./Repositories/ProductRepository.cs: Thực hiện insert data xuống Database
    • ./Tools/CodeMegaCrawler.cs: Đảm nhiệm việc Crawl Data

    Trong Class CodeMegaCrawler.cs các bạn quan tâm đến 3 method chính đó là: BindingProductDetail, BindingProductImage, BindingProductProperty

    Tất cả các thông tin của sản phẩm sẽ được Crawl trong từng trang chi tiết của chúng. Các bạn có thể thấy đoạn code mình lấy thông tin trang HTML chi tiết của từng sản phẩm ở trong hàm Crawling

    đá

    Hàm BindingProductDetail sẽ Crawl thông tin chi tiết của sản phẩm đó

    Hàm BindingProductImage Crawl tất cả các hình ảnh của sản phẩm

    Cuối cùng BindingProductProperty sẽ Crawl các thuộc tính của sản phầm

    Các bạn vào trang chi tiết của sản phẩm sẽ thấy các thông tin ở trên ví dụ như TRANG NÀY

    dsadsa

    3 hàm chính của Tool

    dsad

    Làm sao để chạy Tool

    Trước hết các bạn cần có các phần mềm sau:

    Sau khi đảm bảo bạn đã có đủ các phần mêm trên. Các bạn Download Source Code về (Source Code mình để cuối bài).

    B1. Giải nén ra và mở và chạy file Database.sql trong thư mục SQL đã được giải nén để thực hiện tạo Database. 

    B2. Vào thư mục CrawlDataWebsite và tiến hành mở project lên

    B3. Đổi một số thông tin trong project

    đasadasd

    Đầu tiên các bạn cần đổi đó là biến connectionString thành Connection String của bạn.

    customPathImage bạn có thể đổi biến này hoặc không. Đây là đường dẫn bạn muốn lưu hình ảnh sau khi được Crawl về. Mặc định sẽ được lưu trong thư mục Product Image của Project.

    Sau khi đổi xong thì các bạn chạy Tool và đợi kết quả thôi :D

    Kết quả

    Và đây là kết quả sau khi mình chạy Tool

    đá

    đá

    Các bạn có thể sử dụng câu lệnh sau để kiểm tra data được Crawl trong Database 

    DECLARE @ProductId	NVARCHAR(MAX) = (SELECT TOP 1 Id FROM dbo.Products)
    
    SELECT * FROM dbo.Products WHERE Id = @ProductId
    
    SELECT * FROM dbo.ProductProperty WHERE ProductId = @ProductId
    
    SELECT * FROM dbo.ProductImage WHERE ProductId = @ProductId

    Vậy là đã xong rồi. Các bạn có thắc mắc nào hãy Comment bên dưới nhé ☺


    Tiểu sử
    Are you one or zero?


    Bình luận