Phần bắt đầu nhanh giải thích cách thiết lập và chạy một ứng dụng gọi API Google Workspace.
Các hướng dẫn nhanh về Google Workspace sử dụng thư viện ứng dụng API để xử lý một số thông tin chi tiết về quy trình xác thực và uỷ quyền. Bạn nên sử dụng thư viện ứng dụng cho các ứng dụng của riêng mình. Phần bắt đầu nhanh này sử dụng phương pháp xác thực đơn giản phù hợp với môi trường thử nghiệm. Đối với môi trường phát hành công khai, bạn nên tìm hiểu về quy trình xác thực và uỷ quyền trước khi chọn thông tin xác thực truy cập phù hợp với ứng dụng của mình.
Tạo một ứng dụng dòng lệnh Python để gửi yêu cầu đến API Nhãn trên Drive.
Mục tiêu
- Thiết lập môi trường.
- Cài đặt thư viện ứng dụng.
- Thiết lập mẫu.
- Chạy mẫu.
Điều kiện tiên quyết
- Python 2.6 trở lên
- Công cụ quản lý gói pip
- Một dự án trên Google Cloud.
- Tài khoản Google.
Thiết lập môi trường
Để hoàn tất hướng dẫn nhanh này, hãy thiết lập môi trường của bạn.
Bật API
Trước khi sử dụng API của Google, bạn cần bật các API đó trong một dự án Google Cloud. Bạn có thể bật một hoặc nhiều API trong một dự án Google Cloud.Trong Google Cloud Console, hãy bật API Nhãn của Drive.
Uỷ quyền thông tin xác thực cho ứng dụng trên máy tính
Để xác thực người dùng cuối và truy cập vào dữ liệu người dùng trong ứng dụng, bạn cần tạo một hoặc nhiều mã ứng dụng khách OAuth 2.0. Mã ứng dụng khách được dùng để xác định một ứng dụng với máy chủ OAuth của Google. Nếu ứng dụng của bạn chạy trên nhiều nền tảng, bạn phải tạo một mã ứng dụng riêng cho mỗi nền tảng.- Trong Google Cloud Console, hãy chuyển đến Trình đơn > API và dịch vụ > Thông tin xác thực.
- Nhấp vào Tạo thông tin xác thực > Mã ứng dụng OAuth.
- Nhấp vào Loại ứng dụng > Ứng dụng dành cho máy tính.
- Trong trường Name (Tên), hãy nhập tên cho thông tin xác thực. Tên này chỉ xuất hiện trong Google Cloud Console.
- Nhấp vào Tạo. Màn hình ứng dụng khách OAuth đã tạo sẽ xuất hiện, hiển thị Mã ứng dụng khách và Mã xác thực ứng dụng khách mới.
- Nhấp vào OK. Thông tin xác thực mới tạo sẽ xuất hiện trong phần Mã ứng dụng khách OAuth 2.0.
- Lưu tệp JSON đã tải xuống dưới dạng
credentials.json
và di chuyển tệp đó vào thư mục đang hoạt động.
Cài đặt thư viện ứng dụng Google
Cài đặt thư viện ứng dụng Google cho Python:
pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib
Để biết các tuỳ chọn cài đặt thay thế, hãy tham khảo phần Cài đặt của thư viện Python.
Định cấu hình mẫu
- Trong thư mục đang hoạt động, hãy tạo một tệp có tên
quickstart.py
. Thêm mã sau vào
quickstart.py
:import os.path from google.auth.transport.requests import Request from google.oauth2.credentials import Credentials from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build from googleapiclient.errors import HttpError # If modifying these scopes, delete the file token.json. SCOPES = ['https://www.googleapis.com/auth/drive.labels.readonly'] def main(): """Shows basic usage of the Drive Labels API. Prints the first page of the customer's Labels. """ creds = None # The file token.json stores the user's access and refresh tokens, and is # created automatically when the authorization flow completes for the first # time. if os.path.exists('token.json'): creds = Credentials.from_authorized_user_file('token.json', SCOPES) # If there are no (valid) credentials available, let the user log in. if not creds or not creds.valid: if creds and creds.expired and creds.refresh_token: creds.refresh(Request()) else: flow = InstalledAppFlow.from_client_secrets_file('credentials.json', SCOPES) creds = flow.run_local_server(port=0) # Save the credentials for the next run with open('token.json', 'w') as token: token.write(creds.to_json()) try: service = build('drivelabels', 'v2', credentials=creds) response = service.labels().list( view='LABEL_VIEW_FULL').execute() labels = response['labels'] if not labels: print('No Labels') else: for label in labels: name = label['name'] title = label['properties']['title'] print(u'{0}:\t{1}'.format(name, title)) except HttpError as error: # TODO (developer) - Handle errors from Labels API. print(f'An error occurred: {error}') if __name__ == '__main__': main()
Chạy mẫu
Trong thư mục đang hoạt động, hãy tạo bản dựng và chạy mẫu:
python quickstart.py
Lần đầu tiên chạy mẫu, bạn sẽ được nhắc uỷ quyền truy cập:
- Nếu chưa đăng nhập vào Tài khoản Google, bạn sẽ được nhắc đăng nhập. Nếu bạn đã đăng nhập vào nhiều tài khoản, hãy chọn một tài khoản để sử dụng cho việc uỷ quyền.
- Nhấp vào Chấp nhận.
Thông tin uỷ quyền được lưu trữ trong hệ thống tệp, vì vậy, lần tiếp theo bạn chạy mã mẫu, bạn sẽ không được nhắc uỷ quyền.
Bạn đã tạo thành công ứng dụng Python đầu tiên để gửi yêu cầu đến API Nhãn Drive.