📚 Hướng Dẫn Cấp Quyền Google Drive & Sheets API Và Khắc Phục Các Lỗi Thường Gặp

📚 Hướng Dẫn Cấp Quyền Google Drive & Sheets API Và Khắc Phục Các Lỗi Thường Gặp

📚 Hướng Dẫn Toàn Tập: Cấp Quyền Google Drive & Sheets API Và Khắc Phục Các Lỗi Thường Gặp

Khi bạn chạy các đoạn mã (script), tool hoặc crawler có tương tác với Google Drive và Google Sheets, việc thiết lập quyền truy cập API là bước bắt buộc. Dưới đây là hướng dẫn từ A-Z cách lấy file credentials.json và xử lý các lỗi phát sinh trong quá trình chạy.

PHẦN 1: CÁCH TẠO FILE credentials.json ĐỂ CẤP QUYỀN

File credentials.json đóng vai trò như một “chìa khóa” giúp ứng dụng của bạn giao tiếp với tài khoản Google. Để tạo file này, bạn làm theo các bước sau trên Google Cloud Console.

Bước 1: Tạo Dự án (Project) mới trên Google Cloud

  1. Truy cập trực tiếp vào Google Cloud Console và đăng nhập bằng tài khoản Google của bạn.

  2. Nhìn lên góc trên cùng bên trái, bấm vào menu thả xuống (Select a project), sau đó chọn New Project (Dự án mới).

  3. Điền tên dự án (ví dụ: My-Crawler-App) và bấm Create (Tạo).

  4. Đợi vài giây, sau đó bấm chọn đúng vào dự án vừa tạo trên thanh menu.

Bước 2: Bật (Enable) các API cần thiết

Để tránh lỗi thiếu quyền về sau, bạn nên bật cả Google Drive API và Google Sheets API ngay từ đầu.

  1. Mở menu điều hướng (biểu tượng 3 gạch ngang góc trái) > Chọn APIs & Services > Library (Thư viện).

  2. Tìm kiếm Google Drive API, bấm vào kết quả và chọn Enable (Bật).

  3. Quay lại trang Thư viện, tiếp tục tìm kiếm Google Sheets API, bấm vào và chọn Enable.

Bước 3: Cấu hình Màn hình đồng ý OAuth (OAuth Consent Screen)

Đây là bước Google xác minh ai được phép dùng ứng dụng.

  1. Vào menu APIs & Services > OAuth consent screen.

  2. Tại mục User Type, chọn External (Bên ngoài) rồi bấm Create.

  3. Điền các thông tin bắt buộc có dấu *:

    • App name: Tên tool/ứng dụng của bạn.

    • User support email: Chọn email cá nhân của bạn.

    • Developer contact information: Nhập lại email của bạn.

  4. Cuộn xuống bấm Save and Continue. Các tab tiếp theo (Scopes, Test users) bạn chỉ cần cuộn xuống cuối và bấm Save and Continue để bỏ qua, rồi chọn Back to Dashboard.

Bước 4: Tạo và tải file credentials.json

  1. Chuyển sang tab Credentials (Thông tin xác thực).

  2. Bấm nút + CREATE CREDENTIALS ở phía trên > Chọn OAuth client ID.

  3. Tại ô Application type, chọn Desktop app (Ứng dụng cho máy tính để bàn). Đặt tên tùy ý rồi bấm Create.

  4. Bảng thông báo hiện ra, bấm vào DOWNLOAD JSON.

  5. Đổi tên file vừa tải về thành chính xác credentials.json và chép nó vào thư mục chứa code/tool của bạn.

⚠️ LƯU Ý BẢO MẬT: File này chứa thông tin nhạy cảm. Tuyệt đối không chia sẻ công khai lên mạng hay đẩy lên GitHub.

Bước 5 Vào tìm API google Sheet và Bật nó lên

truy cập vào link sau https://console.cloud.google.com/marketplace/product/google/sheets.googleapis.com?q=search&referrer=search&project=my-crawler-app
bật API google sheet lên mục địch khi upload file lên xong sẽ có quyền ghi log vào file google sheet

PHẦN 2: CÁCH XỬ LÝ CÁC LỖI THƯỜNG GẶP KHI CHẠY TOOL

Dù đã có credentials.json, khi chạy tool bạn vẫn có thể gặp phải các lỗi dưới đây. Hãy bình tĩnh xử lý theo hướng dẫn.

❌ Lỗi 1: Chưa bật Google Sheets API

Dấu hiệu nhận biết: Màn hình console báo lỗi tương tự như: Google Sheets API has not been used in project [ID] before or it is disabled. Enable it by visiting https://console.developers.google.com/...

Nguyên nhân: Mã nguồn của bạn đang cố ghi dữ liệu vào Google Sheets, nhưng dự án trên Google Cloud của bạn mới chỉ bật API cho Drive mà quên bật cho Sheets.

Cách khắc phục:

  1. Bật API qua link trực tiếp: Click hoặc copy đường link có sẵn trong thông báo lỗi (ví dụ: https://console.developers.google.com/apis/api/sheets.googleapis.com/overview?project=...), dán vào trình duyệt và bấm Enable (Bật).

  2. (QUAN TRỌNG) Xóa file Token cũ: Trong lần chạy đầu tiên, mã nguồn đã tự động sinh ra một file lưu phiên đăng nhập (thường tên là token.json hoặc token.pickle) nằm cùng thư mục với code. File này hiện đang lưu quyền cũ bị thiếu. 👉 Bạn BẮT BUỘC phải xóa file token.json (hoặc token.pickle) này đi.

  3. Chạy lại Tool: Sau khi xóa, chạy lại lệnh khởi động tool. Trình duyệt sẽ mở ra yêu cầu bạn đăng nhập và cấp quyền lại từ đầu. Lần này, hệ thống sẽ cấp đủ quyền cho cả Drive và Sheets.

❌ Lỗi 2: Lỗi không tìm thấy vùng dữ liệu (Unable to parse range)

Dấu hiệu nhận biết: Console báo lỗi: Unable to parse range: Sheet1!A1:I1

Nguyên nhân: Tool của bạn kết nối được với Google Sheets thành công, nhưng khi nó tìm đến vùng dữ liệu Từ ô A1 đến I1 ở tab (trang tính) mang tên Sheet1 thì không tìm thấy tab này.

Cách khắc phục chi tiết:

  1. Kiểm tra tên Tab trong file Google Sheets: * Mở file Google Sheets mà bạn đang muốn lưu dữ liệu vào.

    • Nhìn xuống góc dưới cùng bên trái màn hình, xem tên của tab (trang tính) hiện tại đang là gì (thường mặc định ở Việt Nam là Trang tính1).

  2. Đồng bộ tên Tab với Mã nguồn:

    • Cách nhanh nhất: Đổi tên cái tab đó trên Google Sheets thành chính xác Sheet1 (Viết hoa chữ S, không có dấu cách).

    • Hoặc sửa trong Code/Config: Nếu bạn muốn giữ tên tab là tiếng Việt hoặc tên khác (ví dụ: DuLieu), bạn phải mở file code hoặc file cấu hình (như .env, config.json) của tool ra, tìm đoạn "Sheet1!A1:I1" và thay chữ Sheet1 bằng đúng tên tab của bạn (ví dụ: "DuLieu!A1:I1").

    • Lưu ý: Nếu tên tab có khoảng trắng (ví dụ: Data Crawler), bạn phải bọc nó trong dấu nháy đơn, cấu trúc sẽ thành: 'Data Crawler'!A1:I1.

  3. Kiểm tra ID File Sheets: Đảm bảo bạn đang nhập đúng ID của file Google Sheets vào tool (ID là đoạn mã dài trên thanh URL trình duyệt của file Sheets, nằm giữa /d//edit).

Sau khi hoàn tất các bước kiểm tra và chỉnh sửa này, bạn chạy lại tool là tiến trình crawl và upload dữ liệu sẽ diễn ra mượt mà!

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Gọi điện
Chat Zalo
Messenger
Chỉ đường
Liên hệ