CẨM NANG  Cẩm nang AI

Web scraping là gì? Cách doanh nghiệp tự động thu thập dữ liệu

15:25 | 16/10/2026

Web scraping (cào dữ liệu website) là kỹ thuật dùng phần mềm tự động đọc trang web và trích xuất thông tin cần thiết. Dữ liệu như giá, đánh giá hay danh sách cửa hàng được chuyển thành bảng có cấu trúc. Doanh nghiệp dùng web scraping để theo dõi đối thủ và thị trường thay vì chép tay.

Với doanh nghiệp vừa và nhỏ, phần khó ít khi nằm ở kỹ thuật. Câu hỏi thật là nên lấy dữ liệu gì và dùng công cụ nào. Kèm theo đó là việc có chạm vào Luật Bảo vệ dữ liệu cá nhân 91/2025/QH15 hay không. Luật này có hiệu lực từ 01/01/2026, nên nhiều hướng dẫn cào dữ liệu viết trước đó đã lỗi thời.

Web scraping là gì?

Web scraping là quá trình dùng phần mềm tự động trích xuất dữ liệu từ website. Kết quả được lưu thành file Excel, CSV hoặc cơ sở dữ liệu.

Apify, một nền tảng scraping lớn, định nghĩa web scraping là quá trình tự động trích xuất dữ liệu từ website. Trong tiếng Việt, kỹ thuật này còn được gọi là cào dữ liệu website, crawl dữ liệu hoặc thu thập dữ liệu tự động.

Giá trị của web scraping nằm ở bước chuyển đổi. Trang web được thiết kế cho mắt người đọc, với chữ, ảnh và bố cục rời rạc. Scraper biến những thông tin đó thành từng dòng, từng cột mà máy tính xử lý được. Ví dụ, bảng giá 300 sản phẩm của 5 đối thủ có thể tự cập nhật vào Google Sheets mỗi sáng.

Web scraping, web crawling và API khác nhau thế nào?

Ba khái niệm này hay bị dùng lẫn. Web crawling là đi theo các đường link để khám phá và lập danh sách URL, giống cách Googlebot quét web. Web scraping là lấy đúng trường dữ liệu cần thiết trên từng trang. API là cổng kết nối chính thức do chủ website mở ra, trả dữ liệu đã chuẩn hóa sẵn.

Trong dự án thật, hai kỹ thuật đầu thường đi cùng nhau. Hệ thống crawl sitemap để lấy danh sách trang sản phẩm, sau đó scrape từng trang để lấy tên, giá và tình trạng còn hàng. Nếu website có API công khai, nên ưu tiên API vì dữ liệu ổn định hơn và quyền sử dụng rõ ràng hơn.

Tiêu chí Web scraping Web crawling API chính thức
Mục tiêu Lấy trường dữ liệu cụ thể như giá, tên, đánh giá Khám phá và lập danh sách URL Trao đổi dữ liệu qua cổng do chủ website cung cấp
Đầu ra Bảng CSV, Excel, JSON Danh sách đường dẫn, sơ đồ site JSON hoặc XML chuẩn hóa sẵn
Khi website đổi giao diện Dễ hỏng vì bộ chọn HTML thay đổi Ít ảnh hưởng hơn Gần như không ảnh hưởng
Ràng buộc chính Điều khoản website, dữ liệu cá nhân, bản quyền robots.txt, tải máy chủ Điều khoản API, giới hạn số lượt gọi
Ví dụ Theo dõi giá đối thủ Googlebot lập chỉ mục trang Kéo đơn hàng từ sàn về CRM

Một lưu ý nhỏ: API không có nghĩa là được dùng dữ liệu tùy ý. Mỗi API đều có điều khoản, hạn mức và phạm vi trường dữ liệu riêng.

Web scraping hoạt động như thế nào?

Công cụ web scraping gửi yêu cầu tới trang web, nhận mã HTML và tìm phần tử chứa dữ liệu. Sau đó dữ liệu được làm sạch và lưu lại.

Dù dùng công cụ không cần code hay tự viết code, quy trình phía sau gần như giống nhau:

  1. Gửi yêu cầu tới URL. Scraper gửi yêu cầu HTTP như một trình duyệt. Máy chủ trả mã trạng thái, ví dụ 200 là thành công, 403 là bị từ chối, kèm mã HTML của trang.
  2. Hiển thị nội dung động nếu cần. Nhiều website hiện đại tải giá và đánh giá bằng JavaScript sau khi trang mở. Khi đó cần trình duyệt tự động như Playwright để chạy JavaScript trước khi đọc dữ liệu.
  3. Bóc tách dữ liệu bằng bộ chọn. Scraper dùng CSS selector hoặc XPath để chỉ đúng vị trí, chẳng hạn thẻ có class "price" chứa giá bán.
  4. Làm sạch và lưu trữ. Chuỗi "199.000đ" được đổi thành số 199000, bản ghi trùng bị loại, rồi dữ liệu được ghi vào Sheets, CRM hoặc cơ sở dữ liệu.

Điểm yếu lớn nhất nằm ở bước 3. Khi website đổi tên class hay bố cục, bộ chọn cũ trả về ô trống. Đây là lý do nhiều đội đang chuyển sang dùng AI để đọc nội dung theo ngữ nghĩa thay vì theo vị trí cố định.

Doanh nghiệp dùng web scraping để làm gì?

Doanh nghiệp dùng web scraping chủ yếu để theo dõi giá đối thủ và gom đánh giá khách hàng. Nhu cầu phổ biến khác là nghiên cứu thị trường và lập danh sách đối tác B2B.

Theo dõi giá và tồn kho của đối thủ

Đây là ứng dụng phổ biến nhất trong bán lẻ. Scraper ghi lại giá bán, giá khuyến mãi và tình trạng hết hàng của đối thủ theo ngày. Khi đối thủ hết hàng một mã, bạn biết ngay để đẩy quảng cáo cho mã tương đương.

Ở quy mô lớn, nền tảng phân tích bán lẻ ShopGrok tại Úc dùng hạ tầng Bright Data. Hệ thống theo dõi giá tới 100.000 sản phẩm cho mỗi nhà bán lẻ. Doanh nghiệp nhỏ không cần quy mô đó. Theo dõi 50 đến 200 mã chủ lực đã đủ để ra quyết định giá hằng tuần. Hiệu quả rõ hơn khi đi kèm một khung phân tích đối thủ cạnh tranh rõ ràng.

Gom đánh giá khách hàng để tìm vấn đề sản phẩm

Đọc tay 3.000 bình luận mất nhiều ngày. Scraper gom đánh giá từ website, Google Maps hoặc diễn đàn ngành về một bảng. Sau đó mô hình AI phân loại cảm xúc và gom nhóm phàn nàn chính. Các nhóm hay gặp là giao hàng chậm hay đóng gói kém.

Khi gom đánh giá, chỉ giữ nội dung, số sao và ngày đăng. Tên người viết, ảnh đại diện hay đường dẫn hồ sơ cá nhân không cần cho phân tích và làm tăng rủi ro pháp lý.

Nghiên cứu thị trường và nội dung SEO

Marketer có thể thu thập danh mục sản phẩm, khoảng giá và khuyến mãi của cả một ngành. Từ đó họ tìm ra khoảng trống thị trường. Đội SEO dùng cùng kỹ thuật để lấy tiêu đề, thẻ meta và cấu trúc heading của 10 trang đang xếp hạng đầu. Từ đó, họ tìm ra những ý mà đối thủ còn bỏ sót.

Lập danh sách doanh nghiệp và đại lý B2B

Doanh nghiệp B2B hay lấy tên công ty, website, ngành nghề và địa chỉ cửa hàng từ danh bạ doanh nghiệp hoặc Google Maps. Danh sách này giúp đội sales phân vùng thị trường và tìm đại lý tiềm năng.

Cần tách rõ hai loại thông tin. Tên công ty và địa chỉ cửa hàng là thông tin doanh nghiệp. Số điện thoại hay email gắn với một người cụ thể là dữ liệu cá nhân, chịu điều chỉnh của Luật 91/2025/QH15.

Công cụ web scraping nào phù hợp với doanh nghiệp vừa và nhỏ?

Doanh nghiệp chưa có lập trình viên nên bắt đầu với Browse AI hoặc Octoparse. Đội có người kỹ thuật phù hợp hơn với n8n, Scrapy hoặc Playwright.

Bảng dưới so sánh 5 lựa chọn theo ba nhóm: không cần code, tự động hóa quy trình và lập trình. Giá lấy từ trang chính thức của từng hãng, kiểm tra ngày 16/10/2026.

Công cụ Nhóm Gói miễn phí Gói trả phí thấp nhất Phù hợp khi
Browse AI Không cần code Có, giới hạn 2 website Personal 19 USD/tháng nếu trả năm, 48 USD nếu trả theo tháng Marketer theo dõi vài website cố định
Octoparse Không cần code 10 tác vụ, xuất 50.000 dòng mỗi tháng Standard từ 69 USD/tháng, trả theo năm Cần quét danh mục sản phẩm lớn, muốn dùng mẫu dựng sẵn
Apify Nền tảng scraper dựng sẵn 0 USD, kèm 5 USD hạn mức sử dụng mỗi tháng Starter 19 USD/tháng, còn 17 USD/tháng nếu trả năm Muốn dùng scraper có sẵn cho Google Maps, mạng xã hội
n8n Tự động hóa quy trình Bản Community tự cài trên máy chủ riêng Cloud Starter 20 EUR/tháng Cần nối scraping với AI, Google Sheets, CRM
Scrapy, Beautiful Soup, Playwright Lập trình Python Mã nguồn mở 0 đồng bản quyền, tốn chi phí máy chủ và nhân sự Dự án lớn, trang dùng nhiều JavaScript

Nguồn giá: trang bảng giá chính thức của Browse AI, Octoparse, Apify và n8n. Giá SaaS thay đổi theo thời gian, nên kiểm tra lại trước khi mua.

Chọn công cụ bằng ba câu hỏi. Cần theo dõi bao nhiêu website? Dữ liệu cần cập nhật hằng ngày hay hằng tháng? Trong đội có ai đọc được HTML không? Một marketer theo dõi 3 website đối thủ có thể thử bằng gói miễn phí của Browse AI. Hệ thống cập nhật giá hàng nghìn mã mỗi ngày thì cần người kỹ thuật vận hành.

Đừng chỉ nhìn giá gói. Chi phí ẩn thường đến từ proxy và thời gian sửa scraper khi website đổi giao diện. Ví dụ, proxy dân cư trên Apify tính 8 USD cho mỗi GB ở gói Free và Starter. Cào trang nhiều ảnh qua loại proxy này có thể đẩy hóa đơn lên nhanh.

Cách tự động thu thập dữ liệu website bằng n8n và AI

Thu thập dữ liệu tự động bằng n8n gồm 5 bước. Đó là đặt lịch, gọi HTTP Request, bóc tách HTML, trích xuất bằng AI và ghi vào Google Sheets.

n8n không phải scraper chuyên dụng. Giá trị của n8n là nối các bước rời rạc thành một luồng chạy tự động. Ví dụ dưới đây theo dõi giá sản phẩm trên website đối thủ mỗi sáng.

Bước 1: Đặt lịch chạy

Dùng node Schedule Trigger, đặt chạy lúc 7 giờ sáng hằng ngày. Danh sách URL cần theo dõi nên để trong một tab Google Sheets, để người không rành kỹ thuật cũng sửa được.

Bước 2: Lấy mã HTML bằng HTTP Request

Node HTTP Request tải mã HTML của từng URL. Với nhiều trang, dùng Loop Over Items để chạy từng lô và chèn node Wait vài giây giữa các lần gọi. Khi thử nghiệm, chỉ chạy 3 đến 5 URL để kiểm tra kết quả trước khi chạy toàn bộ.

Bước 3: Bóc tách nội dung bằng node HTML

Node HTML lấy nội dung theo CSS selector, ví dụ tên sản phẩm và giá. Để tìm selector, mở trang trên Chrome, nhấp chuột phải vào con số giá và chọn Inspect.

Bước 4: Trích xuất bằng AI khi trang khó đọc

Nếu trang đổi bố cục thường xuyên, đưa phần văn bản đã làm sạch vào node Information Extractor. Bạn khai báo cấu trúc mong muốn, ví dụ tên sản phẩm, giá và tình trạng còn hàng. Mô hình AI tự tìm đúng thông tin mà không phụ thuộc tên class.

Bước 5: Lưu dữ liệu và gửi cảnh báo

Ghi kết quả vào Google Sheets kèm ngày lấy dữ liệu. Thêm node IF để so với giá hôm trước. Nếu đối thủ giảm giá quá 5%, luồng tự gửi cảnh báo qua email hoặc Slack.

Thư viện mẫu của n8n có sẵn workflow Scrape and summarize webpages with AI để tham khảo cấu trúc. Nếu mới làm quen nền tảng này, đọc trước bài n8n làm được gì để nắm các node cơ bản.

Cào dữ liệu website có hợp pháp không?

Cào dữ liệu website không bị cấm chung. Rủi ro pháp lý nằm ở việc lấy dữ liệu cá nhân, vượt rào đăng nhập hay sao chép nội dung có bản quyền.

Câu trả lời phụ thuộc vào loại dữ liệu và cách lấy. Giá sản phẩm công khai khác hoàn toàn với số điện thoại cá nhân lấy từ nhóm Facebook. Phần dưới tổng hợp văn bản pháp luật và án lệ, không thay thế tư vấn của luật sư.

robots.txt có ràng buộc pháp lý không?

robots.txt là file đặt ở thư mục gốc website, báo cho crawler biết đường dẫn nào được truy cập. Theo Google Search Central, file này chủ yếu dùng để quản lý lưu lượng crawler và tránh quá tải máy chủ. Google cũng nói rõ robots.txt không cưỡng chế được crawler, việc tuân thủ là do crawler tự quyết.

Tiêu chuẩn RFC 9309 của IETF, công bố tháng 9/2022, viết rằng các quy tắc này "are not a form of access authorization". Nghĩa là robots.txt là tín hiệu kỹ thuật, không phải giấy phép hay luật. Dù vậy, bỏ qua robots.txt kèm truy cập dồn dập có thể bị dùng làm bằng chứng thiếu thiện chí khi tranh chấp.

Cách đọc và cấu hình file này được giải thích chi tiết trong bài file robots.txt là gì.

Luật Bảo vệ dữ liệu cá nhân 2025 tác động gì đến web scraping?

Luật Bảo vệ dữ liệu cá nhân số 91/2025/QH15 được ban hành ngày 26/06/2025 và có hiệu lực từ 01/01/2026. Văn bản hướng dẫn đi kèm là Nghị định 356/2025/NĐ-CP. Trước mốc này, doanh nghiệp áp dụng Nghị định 13/2023/NĐ-CP.

Điểm quan trọng nhất với web scraping: luật coi thu thập là một hoạt động xử lý dữ liệu cá nhân. Scraper lấy tên, số điện thoại, email hay ảnh của một người cụ thể vẫn là xử lý dữ liệu cá nhân. Làm bằng máy không thay đổi bản chất đó. Từ Nghị định 13, sự im lặng của chủ thể dữ liệu đã không được coi là đồng ý.

Điều 8 của luật đặt mức phạt hành chính tối đa theo từng nhóm vi phạm:

  • Mua, bán dữ liệu cá nhân: tới 10 lần khoản thu có được từ hành vi vi phạm.
  • Vi phạm quy định chuyển dữ liệu cá nhân xuyên biên giới: tới 5% doanh thu năm trước liền kề của tổ chức.
  • Các vi phạm khác: tới 3 tỷ đồng.

Dữ liệu không gắn với cá nhân như giá bán, tồn kho hay thông số sản phẩm không thuộc phạm vi luật này. Tuy vậy, sao chép nguyên văn mô tả, hình ảnh hay bài viết của website khác vẫn có thể vi phạm quyền tác giả.

Các vụ kiện web scraping nổi bật trên thế giới

Hai vụ kiện tại Mỹ thường được nhắc tới khi bàn về web scraping. Cả hai cho thấy tòa án tách riêng câu hỏi về dữ liệu công khai và câu hỏi về điều khoản sử dụng.

Vụ việc Điểm được xét Kết quả cuối
hiQ Labs và LinkedIn Ngày 18/04/2022, Tòa phúc thẩm Khu vực 9 cho rằng cào hồ sơ công khai không phải truy cập trái phép theo luật CFAA Tháng 12/2022, hiQ chấp nhận phán quyết bồi thường 500.000 USD và lệnh cấm vĩnh viễn cào dữ liệu LinkedIn
Meta và Bright Data Bright Data cào dữ liệu công khai của Facebook, Instagram ở trạng thái không đăng nhập Ngày 23/01/2024, tòa liên bang ra phán quyết có lợi cho Bright Data về cáo buộc vi phạm hợp đồng

Bài học khá rõ. Thắng ở một điểm luật không có nghĩa là được tự do cào dữ liệu, vì hiQ vẫn thua ở phần điều khoản sử dụng. Thu thập bằng tài khoản đã đăng nhập thường kéo theo ràng buộc hợp đồng với nền tảng.

Checklist an toàn trước khi chạy web scraping

Trước khi chạy web scraping, doanh nghiệp cần kiểm tra loại dữ liệu và cơ chế đăng nhập. Tiếp theo là API sẵn có, điều khoản website và tần suất truy cập.

Câu hỏi kiểm tra Nếu câu trả lời là "có"
Dữ liệu có gắn với một người cụ thể như tên, số điện thoại, email, ảnh? Bỏ trường đó, hoặc hỏi bộ phận pháp chế về căn cứ xử lý trước khi lấy
Trang phải đăng nhập mới xem được? Không cào bằng tài khoản, dùng API hoặc thỏa thuận với chủ website
Website có API hoặc file dữ liệu chính thức? Ưu tiên dùng API
Điều khoản sử dụng cấm thu thập tự động? Cân nhắc lại mục đích, liên hệ chủ website nếu cần dữ liệu lâu dài
robots.txt chặn đường dẫn cần lấy? Tôn trọng chỉ dẫn, tìm nguồn dữ liệu khác
Định đăng lại mô tả, ảnh hay bài viết lấy được? Chỉ dùng dữ kiện để phân tích nội bộ, không đăng lại nội dung gốc
Mỗi lần chạy cần gọi hàng nghìn trang? Giãn cách giữa các lần gọi, chạy vào giờ thấp điểm

Lỗi thường gặp khi doanh nghiệp tự làm web scraping

Lỗi phổ biến nhất khi tự làm web scraping là thiếu người bảo trì. Website đổi giao diện khiến scraper hỏng âm thầm và báo cáo bị sai.

  • Không ai chịu trách nhiệm bảo trì. Scraper hỏng mà không báo lỗi, bảng giá đứng yên nhiều tuần. Nên cài cảnh báo khi số dòng trả về bằng 0.
  • Lấy nhiều trường hơn mức cần. Thu cả tên người đánh giá và ảnh đại diện trong khi chỉ cần số sao. Dữ liệu thừa vừa tốn chỗ vừa tăng rủi ro pháp lý.
  • Bỏ qua bước làm sạch. Giá ở dạng chữ "199.000đ" hay ngày tháng lẫn định dạng làm biểu đồ và công thức tính sai.
  • Gửi yêu cầu dồn dập. Hàng trăm yêu cầu mỗi giây dễ làm máy chủ đích quá tải, kéo theo việc IP bị chặn.
  • Dựa vào hướng dẫn pháp lý cũ. Nhiều bài viết tiếng Việt về cào dữ liệu chỉ nhắc Nghị định 13/2023, chưa cập nhật Luật 91/2025/QH15.

Câu hỏi thường gặp về web scraping

Web scraping và web crawling khác nhau thế nào?

Web crawling là duyệt theo đường link để khám phá và lập danh sách trang, như cách Googlebot quét web. Web scraping là trích xuất trường dữ liệu cụ thể trên từng trang, như tên và giá sản phẩm. Hai kỹ thuật thường được dùng nối tiếp nhau trong cùng một hệ thống.

Web scraping khác gì gọi API?

API là cổng kết nối chính thức do chủ website cung cấp, trả dữ liệu đã chuẩn hóa và ổn định theo phiên bản. Web scraping đọc trực tiếp giao diện HTML nên dễ hỏng khi trang đổi bố cục. Nếu website có API phù hợp, doanh nghiệp nên ưu tiên dùng API.

Website không có API thì có lấy dữ liệu được không?

Website không có API vẫn lấy được dữ liệu công khai bằng web scraping. Trước khi làm, cần kiểm tra điều khoản sử dụng, robots.txt và loại dữ liệu định lấy. Nếu cần dữ liệu lâu dài, xin quyền truy cập từ chủ website thường an toàn hơn.

Cào dữ liệu website có vi phạm pháp luật không?

Cào dữ liệu website không bị cấm chung tại Việt Nam. Rủi ro phát sinh khi thu thập dữ liệu cá nhân trái Luật 91/2025/QH15. Vượt rào đăng nhập hoặc sao chép nội dung có bản quyền cũng là rủi ro. Dữ liệu như giá và thông số sản phẩm ít rủi ro hơn.

Có cần biết lập trình để làm web scraping không?

Không cần biết lập trình để bắt đầu web scraping. Công cụ không cần code như Browse AI và Octoparse cho phép chọn dữ liệu bằng cách nhấp chuột trên trang. Lập trình chỉ cần thiết khi quy mô lớn hoặc trang dùng nhiều JavaScript.

Web scraping tốn bao nhiêu chi phí?

Web scraping có thể bắt đầu với 0 đồng nhờ gói miễn phí của Browse AI, Octoparse, Apify hoặc bản n8n tự cài. Theo giá công bố tháng 10/2026, gói trả phí thấp nhất của các công cụ này từ khoảng 19 USD mỗi tháng. Chi phí proxy và nhân sự bảo trì tính riêng.

Có nên cào số điện thoại, email từ Facebook hoặc diễn đàn để bán hàng không?

Không nên cào số điện thoại, email cá nhân để bán hàng. Đây là dữ liệu cá nhân. Người dùng đăng công khai không đồng nghĩa họ đồng ý cho doanh nghiệp khác thu thập để tiếp thị. Hành vi này có thể bị xử phạt theo Luật 91/2025/QH15.

Làm sao để không bị website chặn khi cào dữ liệu?

Cách bền vững nhất là thu thập như một khách truy cập lịch sự. Giãn cách vài giây giữa các yêu cầu, chạy vào giờ thấp điểm, tôn trọng robots.txt và chỉ lấy trang thực sự cần. Nếu website vẫn chặn, nên dùng API hoặc liên hệ chủ website thay vì tìm cách vượt rào.

Cần dựng quy trình thu thập dữ liệu tự động cho doanh nghiệp?

Web scraping chỉ có giá trị khi dữ liệu đi vào quyết định. Đó có thể là chỉnh giá, sửa thông điệp quảng cáo hay chọn thị trường mới. Phần khó là nối scraper với AI, CRM và báo cáo, rồi giữ luồng đó chạy ổn định mỗi ngày.

Vinalink Media triển khai các luồng n8n và AI Agent cho từng phòng ban qua dịch vụ AI Agent cho từng bộ phận. Bài toán theo dõi đối thủ hay tổng hợp đánh giá khách hàng có thể bắt đầu từ một workflow nhỏ. Ví dụ n8n ở trên là điểm khởi đầu hợp lý.

Để lại thông tin tại trang liên hệ Vinalink Media hoặc gọi hotline 0915 157 599 để đặt lịch tư vấn.

Call Zalo Messenger LinkedIn