Bạn muốn trích xuất dữ liệu từ website có cơ chế tải dữ liệu hiện đại? Bài viết này sẽ hướng dẫn chi tiết cách lấy dữ liệu từ website sử dụng GraphQL với Power Query, một công cụ mạnh mẽ có sẵn trong Excel và Power BI. Phương pháp này đặc biệt hữu ích khi hàm ImportHTML trong Google Sheets không thể hoạt động.
Dữ liệu từ website được truyền đến máy tính chúng ta theo hai cách chính. Cách truyền thống là server gửi toàn bộ nội dung trang web, bao gồm văn bản, mã JavaScript, CSS, hình ảnh, video… về trình duyệt. Với cách này, hàm ImportHTML trong Google Sheets hoạt động hiệu quả. Tuy nhiên, nhiều website hiện đại sử dụng cách thứ hai, tải khung trang web trước rồi sau đó mới tải dữ liệu, giúp trang web động hơn và không cần tải lại toàn bộ trang. Bài viết này tập trung vào cách trích xuất dữ liệu từ website sử dụng cơ chế thứ hai này.
Hai cách trình duyệt nhận dữ liệu từ website
- Cách truyền thống: Server gửi toàn bộ nội dung trang web khi nhận được yêu cầu. Ví dụ, khi bạn gõ
https://blog.hocexcel.online
và nhấn Enter, trình duyệt gửi yêu cầu đến server. Server sau đó gửi lại toàn bộ thông tin về trang web, bao gồm nội dung, mã JavaScript, CSS, hình ảnh, video… cho trình duyệt để hiển thị. - Cách hiện đại: Khung trang web được tải trước, sau đó dữ liệu được tải riêng biệt thông qua một cơ chế mới, thường là thông qua API. Cách này giúp trang web tải nhanh hơn và tương tác động hơn.
YouTube video
Trích xuất dữ liệu bằng Power Query
Series hướng dẫn này gồm 3 phần. Phần này tập trung vào cách trích xuất dữ liệu từ website sử dụng GraphQL với Power Query trong Excel và Power BI. Hai phần tiếp theo sẽ hướng dẫn sử dụng các công cụ khác.
Website ví dụ chúng ta sẽ trích xuất dữ liệu là: Axie.zone. Video hướng dẫn chi tiết cách thực hiện có thể được xem ở trên. Bài viết này sẽ đi sâu vào các bước kỹ thuật và giải thích chi tiết về cách Power Query tương tác với GraphQL.
Hiểu về GraphQL và Power Query
GraphQL là một ngôn ngữ truy vấn cho API và một runtime để thực hiện các truy vấn đó với dữ liệu hiện có. Nó cho phép client chỉ yêu cầu chính xác dữ liệu cần thiết, giúp tối ưu hiệu suất và giảm tải dữ liệu không cần thiết.
Power Query là một công cụ business intelligence (BI) cho phép bạn nhập dữ liệu từ nhiều nguồn khác nhau, bao gồm cả API web. Nó cung cấp một giao diện trực quan để xây dựng các truy vấn và chuyển đổi dữ liệu.
Kết hợp GraphQL và Power Query
Việc kết hợp GraphQL và Power Query cho phép bạn trích xuất dữ liệu từ website một cách hiệu quả và linh hoạt. Bạn có thể sử dụng Power Query để gửi các truy vấn GraphQL đến API của website và nhận lại dữ liệu theo định dạng mong muốn.
Kết luận
Việc trích xuất dữ liệu từ website sử dụng GraphQL với Power Query là một kỹ thuật mạnh mẽ cho phép bạn thu thập dữ liệu một cách hiệu quả và linh hoạt. Hãy theo dõi hai phần tiếp theo của series để tìm hiểu thêm về các công cụ và kỹ thuật khác. Bạn cũng có thể tìm hiểu thêm về Power Query và cơ chế tải dữ liệu của trang web thông qua các khóa học trực tuyến.
Discussion about this post