Notice
Recent Posts
Recent Comments
Link
SeouliteLab
파이썬으로 구글 API 호출하기: google-auth-httplib2 모듈 활용법 본문
구글 API를 호출하고 데이터를 가져오기 위해서는 인증이 필요합니다. 이를 위해 google-auth-httplib2 모듈을 사용하면 HTTP 프로토콜을 통해 구글 API에 안전하게 연결하고 데이터를 주고받을 수 있습니다. 이제 몇 가지 예제를 통해 google-auth-httplib2 모듈의 활용법을 알아보겠습니다.
예제 1: 인증된 HTTP 세션 만들기
import httplib2
from google_auth_httplib2 import AuthorizedHttp
from google.oauth2 import service_account
# 서비스 계정 인증 설정
credentials = service_account.Credentials.from_service_account_file(
'service-account.json',
scopes=['https://www.googleapis.com/auth/drive']
)
# 인증된 HTTP 세션 만들기
http = AuthorizedHttp(credentials)
# API 호출하기
resp, content = http.request('https://www.googleapis.com/drive/v3/files', method='GET')
print(resp)
이 예제에서는 서비스 계정을 사용하여 구글 API에 인증된 HTTP 세션을 만듭니다. 이를 통해 구글 드라이브 API에 GET 요청을 보내고, 응답을 출력합니다.
예제 2: 인증된 HTTP 클라이언트 만들기
import httplib2
from google_auth_httplib2 import AuthorizedHttp
from google.auth import default
# 캐시된 인증 정보 가져오기
credentials, _ = default()
# 인증된 HTTP 클라이언트 만들기
http = AuthorizedHttp(credentials)
# API 호출하기
resp, content = http.request('https://www.googleapis.com/calendar/v3/calendars/primary/events', method='GET')
print(resp)
이 예제에서는 google-auth를 사용하여 캐시된 인증 정보를 가져온 후, 이를 사용하여 구글 캘린더 API에 인증된 HTTP 클라이언트를 만듭니다. 이 클라이언트를 사용하여 기본 캘린더의 이벤트 목록을 가져옵니다.
예제 3: 인증된 HTTP 요청 전송하기
import httplib2
from google_auth_httplib2 import AuthorizedHttp
from google.auth import default
# 캐시된 인증 정보 가져오기
credentials, _ = default()
# 인증된 HTTP 클라이언트 만들기
http = AuthorizedHttp(credentials)
# API 호출하기
resp, content = http.request('https://www.googleapis.com/youtube/v3/search', method='GET', body=b'q=python')
print(resp)
이 예제에서는 인증된 HTTP 클라이언트를 사용하여 YouTube API에 GET 요청을 보내고, 검색 결과를 가져옵니다.