05 Cách lấy dữ liệu từ web vào Google Sheets đơn giản nhất
Thay vì phải copy – paste thủ công dữ liệu từ web vào Google Sheets tốn thời gian mà lại dễ sai sót. Giờ đây, bạn chỉ cần sử dụng 05 cách lấy dữ liệu từ web vào Google Sheets được GCS Việt Nam giới thiệu dưới bài viết sau đây. Bạn sẽ dễ dàng thực hiện một cách tự động và nhanh chóng làm chủ được trang tính của mình với hàng nghìn dữ liệu.
Tại sao cần phải lấy dữ liệu từ web vào Google Sheets?
Google Sheets là một công cụ cho phép bạn kết nối và xử lý dữ liệu từ nhiều nguồn khác nhau, bao gồm cả các trang web. Khi bạn thực hiện lấy dữ liệu từ web vào Google Sheets chỉ bằng vài thao tác đơn giản, sẽ tối ưu hóa được công việc của mình một cách tự động và hiệu quả. Dưới đây là một số lý do vì sao bạn nên lấy dữ liệu từ website vào Google Sheets trực tiếp để dùng:
Lợi ích của việc lấy dữ liệu từ web so với copy – paste
Copy – paste dữ liệu thủ công từ trang web vào bảng tính, nhanh gọn nhưng lại tiềm ẩn vô số rủi ro và hạn chế.
- Thứ nhất, việc copy – paste thủ công rất tốn thời gian và công sức. Đặc biệt, khi bạn cần thu thập số lượng lớn dữ liệu hoặc dữ liệu thường xuyên phải cập nhật. Bạn sẽ mất công lặp đi lặp lại một quy trình copy rồi paste một cách nhàm chán và kém hiệu quả.
- Thứ hai, copy – paste dẫn đến nguy cơ sai sót dữ liệu rất cao. Bởi khi copy – paste, bạn có thể vô tình bỏ sót hàng, cột hoặc sao chép sai định dạng. Điều này trực tiếp dẫn tới tình trạng dữ liệu không được thu thập chính xác, ảnh hưởng đến kết quả bảng tính sau khi copy về.
- Thứ ba, dữ liệu sau khi được copy – paste không tự động cập nhật. Nếu mà thông tin từ trang web bị thay đổi, điều này đồng nghĩa với việc thông tin của bảng tính sai hoàn toàn. Lúc này, bạn lại mất công thực hiện lại quy trình copy rồi paste lại dữ liệu sao cho chính xác nhất. Một thao tác lỗi thời và tốn vô số thời gian, đặc biệt với các dữ liệu về biến động như giá cả, tỷ giá,… là một bất cập vô cùng lớn.
Giờ đây, việc lấy dữ liệu từ web vào Google Sheets đã trở nên đơn giản hơn rất nhiều khi bạn biết đến các hàm tự động. Việc sử dụng các hàm tự động để lấy nguồn dữ liệu trực tiếp từ website về trang tính mang tới rất nhiều lợi ích vượt trội như là:
- Tiết kiệm thời gian và công sức: Google Sheets sẽ tự động lấy và cập nhật dữ liệu từ website về trang tính cho bạn sau khi đã thiết lập công thức.
- Độ chính xác cao: Các hàm sẽ làm việc tự động, giảm thiểu lỗi do con người thực hiện và dữ liệu luôn đúng với nguồn.
- Tự động cập nhật: Hàm sẽ liên kết với dữ liệu web và tự động làm mới theo định kỳ, thông tin của bạn luôn được cập nhật.
- Mang tới khả năng mở rộng: Ngoài một trang web, bạn có thể lấy nguồn dữ liệu từ nhiều website khác nhau.
- Dễ dàng phân tích: Dữ liệu được đưa vào Google Sheets bằng hàm sẽ tạo ra cấu trúc sắp xếp, lọc,…sẵn cho người dùng.
Ứng dụng thực tiễn trong từng lĩnh vực cụ thể
Với khả năng lấy dữ liệu từ web vào Google Sheets đã mở ra vô vàn các ứng dụng thực tiễn cho người dùng trong nhiều lĩnh vực phổ biến, như là:
- Kinh doanh và tiếp thị
Trong lĩnh vực này, bạn có dễ dàng nắm bắt theo dõi giá sản phẩm của đối thủ trước biến động thị trường để đưa ra chiến lược giá phù hợp. Hay từ việc lấy số liệu từ các nền tảng quảng cáo, bạn có thể dễ dàng theo dõi hiệu quả của các đơn vị trong một bảng tính. Bằng cách tổng hợp tin tức, bài viết từ các blog, trang web chuyên ngành thì bạn sẽ dễ dàng phân tích xu hướng của thị trường dễ dàng trong bảng tính.
- Tài chính và đầu tư
Bạn có thể dễ dàng cập nhật và lấy dữ liệu cổ phiếu, tỷ giá hối đoán, giá vàng, giá tiền điện tử từ nhiều nguồn khác nhau để theo dõi và đưa ra quyết định đầu tư đúng lúc. Hay, từ các trang web của công ty, bạn dễ dàng tổng hợp được báo cáo tài chính trên Google Sheets.
- Báo cáo và quản lý dự án
Bạn dễ dàng lấy dữ liệu từ các hệ thống quản lý nội bộ hoặc trang công khai của công ty để báo cáo hàng ngày, hàng tuần, hàng tháng mà không cần phải nhập liệu thủ công. Hoặc, bạn dễ dàng nắm bắt thông tin được công khai của một dự án trên trang web nội bộ của công ty,…
Ngoài ra, việc lấy dữ liệu từ web vào Google Sheets còn có thể áp dụng linh hoạt trong nhiều lĩnh vực khác nhau. Và mỗi lĩnh vực riêng, tính năng này sẽ mang đến những giá trị hiệu quả cho người sử dụng.
05 Cách lấy dữ liệu từ web vào Google Sheets
Hiện nay, bạn có thể dễ dàng thực hiện lấy dữ liệu từ web vào Google Sheets bằng 05 cách đơn giản được giới thiệu dưới đây. Các cách được sắp xếp từ đơn giản đến phức tạp nhất, nhưng đều đáp ứng nhu cầu chung của tất cả mọi người là lấy dữ liệu từ website vào Google Sheets.
Cách 1 – Sử dụng IMPORTDATA nhập dữ liệu từ file CSV/TSV
Hàm IMPORTDATA là một hàm lấy dữ liệu từ các tệp được định dạng dưới dạng CSV và TSV. Đây là các tệp được lưu trữ trực tuyến URL công khai và không cần phải đăng nhập hoặc xác thực. Dữ liệu sau khi dùng hàm IMPORTDATA sẽ tự động làm mới theo định kỳ trong Sheets.
Với hàm IMPORTDATA này, bạn không thể sử dụng để lấy dữ liệu từ các trang web HTML phức tạp hoặc các định dạng như JSON, XML. URL dữ liệu phải trỏ thẳng đến tệp dữ liệu, không phải là URL của trang web hiển thị dữ liệu rồi bạn mới tải xuống tệp.
Cách thức hoạt động của hàm IMPORTDATA, đó là khi nhập công thức vào một ô trong Google Sheets, trang tính sẽ gửi đi yêu cầu đến URL được cung cấp. Sau đó, Google Sheets tải xuống nội dung của tệp CSV/TSV và tự động phân tách dữ liệu thành các cột và hàng tương ứng trong bảng tính của bạn.
*Lưu ý: Mỗi dấu phẩy hoặc tab ở trong tệp dữ liệu cung cấp sẽ được Google Sheets hiểu là ranh giới giữa cột. Mỗi dòng mới sẽ là một hàng mới.
*Cú pháp của hàm IMPORTDATA là:
=IMPORTDATA(“URL_của_file”)
Trong đó: URL_của_file là đường dẫn trực tiếp đến tệp CSV hoặc TSV trên internet. Tệp này phải có quyền truy cập công khai để Google Sheet có thể đọc được.
*Ví dụ thực tế:
Bạn muốn lấy thông tin chiều cao và cân nặng của một trang web được định dạng .csv với đường liên kết là https://people.sc.fsu.edu/~jburkardt/data/csv/hw_200.csv
Công thức:
=IMPORTDATA(“https://people.sc.fsu.edu/~jburkardt/data/csv/hw_200.csv”)
Trong đó: IMPORTDATA là hàm đơn giản dùng để nhập dữ liệu bảng dạng CSV/TSV từ một URL công khai.
*Kết quả:
Cách 2 – Sử dụng hàm IMPORTHTML trích xuất bảng hoặc danh sách từ trang web
Nếu dữ liệu của bạn muốn lấy nằm trong một bảng hoặc danh sách của một trang web HTML, hãy sử dụng hàm IMPORTHTML. Hàm này mạnh hơn hàm IMPORTDATA. Bởi vì nó có khả năng phân tích cú pháp HTML của trang web và trích xuất được ra các phần tử cụ thể.
Hàm IMPORTHTML không yêu cầu sự phức tạp về cấu trúc web, chỉ cần dữ liệu được tổ chức gọn gàng trong bằng hoặc thẻ danh sách. Tuy nhiên, nếu cấu trúc trong bảng thay đổi, công thức mà bạn lấy dữ liệu về sẽ bị hỏng và trả kết quả không chính xác. Đặc biệt, đôi khi hàm này sẽ khó xác định chính xác chỉ số index nếu trang web có quá nhiều bảng hoặc danh sách ẩn. Do đó, các bạn cần phải lưu ý trước khi sử dụng hàm IMPORTHTML để lấy dữ liệu từ web vào Google Sheets.
*Cú pháp của hàm IMPORTHTML là:
=IMPORTHTML(URL, “loại_dữ_liệu”, chỉ_mục)
Trong đó:
- URL (Bắt buộc): Địa chỉ đầy đủ của trang web muốn lấy dữ liệu. Bạn cần đặt địa chỉ này trong dấu ngoặc kép.
- “loại_dữ_liệu” (Bắt buộc): Là một đoạn văn bản để Google Sheets biết bạn muốn trích xuất loại phần tử nào từ trang web. Có hai loại dữ liệu chính là:
- “table”: Dùng khi dữ liệu bạn muốn lấy nằm trong một bảng HTML. Google Sheet sẽ tìm tất cả các bảng trên trang và trích xuất.
- “list”: Dùng khi dữ liệu bạn muốn lấy nằm trong một danh sách HTML.
- chỉ_mục (Bắt buộc): Là một số nguyên, chỉ định thứ tự của bảng hoặc danh sách muốn lấy. Ví dụ, muốn lấy bảng đầu tiên trên trang, chỉ_mục sẽ là 1; muốn lấy danh sách thứ ba trên trang, chỉ_mục sẽ là 3.
*Ví dụ thực tế:
Bạn muốn lấy dữ liệu từ một bảng trên trang Wikipedia về “Danh sách các quốc gia theo GDP”. Với đường link là https://en.wikipedia.org/wiki/List_of_countries_by_GDP_(nominal)
Công thức:
=IMPORTHTML(“https://en.wikipedia.org/wiki/List_of_countries_by_GDP_(nominal)”, “table”, 2)
Trong đó:
- “table” chỉ định kiểu dữ liệu muốn trích xuất là bảng.
- 2 là bảng thứ 2 trên trang (các bảng được đánh số theo thứ tự xuất hiện).
*Kết quả:
Cách 3 – Sử dụng hàm IMPORTFEED nhập RSS/Atom feed
Nếu bạn muốn theo dõi các bài viết mới, tin tức hoặc cập nhật từ các blog, trang tin tức hoặc diễn đàn, hãy sử dụng hàm IMPORTFEED. Hàm này giúp bạn lấy dữ liệu từ web vào Google Sheets từ các nguồn cấp dữ liệu theo định dạng RSS và Atom. Đây là một trong các định dạng XML được sử dụng phổ biến để xuất bản các nội dung được cập nhật thường xuyên.
Hàm IMPORTFEED sử dụng dữ liệu chỉ cần URL của feed và có thể là nội dung được cập nhật thường xuyên. Nhưng hàm này chỉ lấy được thông tin có sẵn trong feed như tiêu đề, tóm tắt, URL, ngày đăng chứ không lấy được các nội dung chi tiết nằm trong bài viết chính trên trang web.
*Cú pháp của hàm IMPORTFEED là:
=IMPORTFEED(URL_của_feed, “loại_truy_vấn”, [có_tiêu_đề], [số_lượng_mục])
Trong đó:
-
- URL_của_feed (Bắt buộc): Là địa chỉ đầy đủ của nguồn cấp dữ liệu RSS hoặc Atom muốn lấy dữ liệu. Bạn cần đặt địa chỉ này trong dấu ngoặc kép.
- “loại_truy_vấn” (Bắt buộc): Là một đoạn văn bản chỉ định loại thông tin muốn trích xuất từ feed. Các giá trị có thể bao gồm:
-
- “items”: Lấy tất cả các mục (bài viết, tin tức) có trong feed, bao gồm tiêu đề, URL, tóm tắt và ngày tạo.
- “items title”: Chỉ lấy tiêu đề của các mục trong feed.
- “items url”: Chỉ lấy đường dẫn (URL) của các mục trong feed.
- “items summary”: Chỉ lấy tóm tắt nội dung của các mục trong feed.
- “items created”: Chỉ lấy thời gian tạo (ngày/giờ đăng) của các mục trong feed.
- “feed title”: Lấy tiêu đề của toàn bộ feed
- “feed url”: Lấy URL của chính feed đó.
- [có_tiêu_đề] : Là một giá trị TRUE hoặc FALSE. TRUE – hàng đầu tiên của kết quả sẽ là các tiêu đề cột. FALSE – kết quả sẽ không có hàng tiêu đề.
- [số_lượng_mục]: Là một số nguyên, chỉ định số lượng mục muốn lấy từ feed (không bắt buộc).
*Ví dụ thực tế:
Bạn muốn theo dõi 5 tin tức mới nhất từ Google Tin tức tiếng Việt. Đường link là: https://vnexpress.net/rss/thoi-su.rss
Công thức:
=IMPORTFEED(“https://vnexpress.net/rss/thoi-su.rss”, “items title”, FALSE, 5)
Trong đó:
- “items title” là mục bạn muốn hiển thị (tiêu đề bài viết).
- FALSE để không hiển thị tiêu đề feed chính.
- 5 là số lượng bài viết cần hiển thị.
*Kết quả:
Cách 4 – Sử dụng hàm IMPORTXML lấy dữ liệu theo XPath từ HTML/XML
Hàm IMPORTXML cho phép bạn lấy bất kỳ dữ liệu nào từ một trang web HTML hoặc XML bằng cách sử dụng XPath. XPath là một ngôn ngữ truy vấn để chọn các nút từ một tài liệu XML/HTML.
Cách thức hoạt động của hàm IMPORTXML là tải trang web tại URL, sau đó duyệt cấu trúc HTML (hoặc XML) của trang đó và tìm kiếm phần tử khớp với biểu thức XPath đã chỉ định. Sau khi tìm thấy, hàm đó sẽ trích xuất nội dung phần tử và đưa vào Google Sheets.
Hàm IMPORTXML đặc biệt hơn các hàm còn lại, bởi vì hông bị giới hạn chỉ ở bảng hoặc danh sách. Đặc biệt có thể lấy gần như bất kỳ phần dữ liệu nào trên một trang web HTML/XML miễn là bạn có thể xác định được XPath của nó.
*Cú pháp của hàm IMPORTXML là:
=IMPORTXML(URL, “truy_vấn_xpath”)
Trong đó:
- URL (Bắt buộc): Là địa chỉ đầy đủ của trang web mà bạn muốn lấy dữ liệu. Bạn cần đặt URL trong dấu ngoặc kép.
- “truy_vấn_xpath” (Bắt buộc): Là chuỗi văn bản đại diện cho một biểu thức XPath. XPath là một ngôn ngữ được thiết kế để định vị các phần tử trong một tài liệu XML/HTML. Bạn cần phải truy vấn XPath trước khi dùng công thức.
*Ví dụ thực tế:
Trích xuất các tiêu đề bài viết nổi bật trên trang chủ GCS. Đường link là https://gcs.vn/tin-tuc/
– Bước 1: Đầu tiên, bạn mở trang GCS, sau đó di chuyển chuột đến một trong các tiêu đề bài viết chính trên trang chủ.
– Bước 2: Bạn nhấn vào chuột phải tới tiêu đề của bài viết đó, chọn Kiểm tra.
– Bước 3: Sau đó, bạn thực hiện sao chép XPath bằng cách như sau:
- Trong cửa sổ tab Elements, thấy dòng mã mã HTML đã được đánh dấu, tìm đến các thẻ có chứa văn bản của tiêu đề.
- Chọn chuột phải vào dòng mã HTML được đánh dấu và chọn Copy.
- Chọn tiếp Copy XPath và lưu lại đoạn mã //*[@id=”content”]/section[3]/div/div/div/div/div/div[1]/div[1]/div/div/div[2]/div/h2/a
– Bước 4: Sau đó, bạn thực hiện áp mã vào Google Sheets với công thức
Công thức:
=IMPORTXML(“https://gcs.vn/tin-tuc/”, “//*[@id=”content”]/section[3]/div/div/div/div/div/div[1]/div[1]/div/div/div[2]/div/h2/a”)
Trong đó:
- “https://gcs.vn/tin-tuc/”: Là URL của trang GCS.
- “//*[@id=”content”]/section[3]/div/div/div/div/div/div[1]/div[1]/div/div/div[2]/div/h2/a”: Là biểu thức XPath mà chúng ta tìm được
*Kết quả:
Cách 5 – Sử dụng tiện ích mở rộng
Ngoài hàm IMPORT, bạn có thể sử dụng thêm các tiện ích mở rộng để lấy dữ liệu từ web vào Google Sheets. Hiện này, Google Workspace Marketplace cung cấp khá nhiều add – on để sử dụng tính năng này trong Google Trang tính.
Dưới đây là một số tiện ích mở rộng nổi bật hỗ trợ bạn lấy dữ liệu từ web vào Google Sheets đơn giản:
- Coefficient: Đây là một tiện ích mở rộng giúp tìm và lấy dữ liệu từ website vào Google Sheets mà không cần phải dùng bất kỳ dòng code nào. Công cụ này hỗ trợ cập nhật dữ liệu ngay trong thời gian thực.
- Coupler.io: Đây là một tiện ích xuất sắc, giúp bạn đơn giản hóa quá trình lấy dữ liệu từ web vào Google Sheets. Công cụ này cho phép lên lịch tự động và bảng tính được cập nhật liên tục các báo báo hoặc lịch trình.
Ngoài ra, còn rất nhiều các tiện ích mở rộng khác giúp bạn lấy dữ liệu từ web vào Google Sheets tự động một cách dễ dàng và vượt qua những giới hạn mà hàm IMPORT không thực hiện được.
Hạn chế và những lưu ý khi dùng hàm IMPORT
Các hàm IMPORT của Google Sheets là công cụ hữu hiệu giúp bạn lấy dữ liệu từ web vào Google Sheets. Nhưng chúng vẫn còn khá nhiều các hạn chế mà bạn phải lưu ý để tránh gặp phải những lỗi khi thực hiện công thức hàm. Như sau:
Không hỗ trợ website không đăng nhập tài khoản
Khi sử dụng các hàm IMPORTDATA, IMPORTHTML, IMPORTFEED, và IMPORTXM, cần đảm bảo.
- Thứ nhất, website cần đăng nhập tài khoản Google để truy cập đến URL.
- Thứ hai, mọi dữ liệu trong URL phải là nội dung công khai
IMPORTXML có thể gây lỗi dữ liệu trống
Công thức IMPORTXML trả về lỗi hoặc ô trống, mặc dù trước đó hoạt động bình thường. Lý do của vấn đề này là:
- Cấu trúc HTML thay đổi, XPath để trích xuất dữ liệu sẽ không còn khớp. Với lỗi này, bạn phải kiểm tra, tìm và sao chép lại XPath mới.
- Giới hạn truy vấn của Google Sheet với hàm IMPORTXML khi có quá nhiều công thức. Google Sheet có thể tạm thời không lấy dữ liệu và sẽ gây ra lỗi.
>>> Xem thêm: Cách chia sẻ 1 Sheet trong Trang tính
Lời kết
Như vậy, qua bài viết này, chúng ta đã cùng khám phá những phương pháp để lấy dữ liệu từ web vào Google Sheets. Ngoài ra, bạn nên sở hữu riêng bản Google Sheet bản quyền để có thể bảo mật các dữ liệu từ web một cách tốt nhất bằng cách đăng ký ngay gói Google Workspace chính hãng.
Nếu bạn còn bất kỳ thắc mắc nào cần được hỗ trợ giải đáp trong quá trình thực hiện, đừng ngần ngại liên hệ đến GCS Việt Nam qua các kênh dưới đây để được giải đáp nhé.
- Fanpage: GCS – Google Cloud Solutions
- Hotline: 024.9999.7777
















