2 bài trước bạn đã học đọc dữ liệu từ file (CSV, JSON). Nhưng nhiều dữ liệu quan trọng (giá cổ phiếu, tỷ giá, dữ liệu thời tiết…) không nằm sẵn trong 1 file — mà cần “hỏi” 1 dịch vụ trực tuyến mỗi khi cần. Đây là lúc dùng API.
API là gì — hiểu qua ví dụ thật
API (Application Programming Interface) giống như 1 “cửa hàng tự động” — bạn gửi 1 yêu cầu (request) đến 1 địa chỉ cụ thể, và nhận về dữ liệu mới nhất, thường ở dạng JSON.
Code thật: chỉ 5 dòng để lấy dữ liệu từ GitHub API
Thư viện requests là công cụ chuẩn để gọi API trong Python. Với dữ liệu lưu trong cơ sở dữ liệu (database) — thường gặp trong môi trường doanh nghiệp — pandas cũng có
thể kết nối trực tiếp qua các thư viện như sqlalchemy, đọc thẳng bảng dữ liệu thành
DataFrame mà không cần xuất file trung gian.
Xem thêm
Video này (tiếng Anh) thực hành chi tiết thư viện requests — công cụ chuẩn để gọi API trong Python.
- Bạn giải thích được API là gì bằng 1 ví dụ đời thường (không dùng thuật ngữ kỹ thuật).
- Bạn viết được đoạn code cơ bản gọi 1 API và chuyển kết quả thành DataFrame.
- Bạn biết rằng pandas cũng kết nối được trực tiếp với cơ sở dữ liệu, không chỉ file.
Khả năng tự động lấy dữ liệu mới nhất (qua API) là bước đầu tiên để xây 1 hệ thống phân tích/báo cáo TỰ ĐỘNG, không cần ai ngồi tải file tay mỗi ngày. Đây chính là nền tảng kỹ thuật cho Module 7 (tự động hóa Google Apps Script) sẽ học sau.
Câu hỏi thường gặp
API có luôn miễn phí và không cần đăng ký không?
Không luôn — nhiều API công khai (như GitHub) dùng được ngay, nhưng nhiều API khác (dữ liệu tài chính, thời tiết chi tiết) cần đăng ký lấy khóa truy cập (API key) và có thể mất phí ở quy mô lớn.
Nếu API trả về lỗi thì phải làm sao?
Luôn kiểm tra mã trạng thái (status code) của phản hồi trước khi xử lý dữ liệu — mã 200 là thành công, mã khác (404, 500…) báo hiệu có lỗi cần xử lý riêng.
Kỹ năng này ứng dụng gì cho phân tích đầu tư?
Rất nhiều — nhiều dịch vụ tài chính cung cấp API lấy giá cổ phiếu, tỷ giá theo thời gian thực, giúp bạn tự động cập nhật dữ liệu phân tích mà không cần tải tay mỗi ngày.
