gspread Quota exceeded 오류 (feat. 구글 시트, Google sheets API, gspread.exceptions.APIError, Python)
더 바빠지기 전에 얼릉 부자스터디 자동화를 위해 코딩을 하고 있는 중이다.
슬랙에서 데이터를 가져오는 부분을 어떻게 자동화해야 할 지 모르겠어서
완전 자동화는 조금 힘들 것 같고 0.9자동화?가 될 것 같은 느낌이다.
근데 역시 수월하진 않음.
코딩의 꽃! "Exception오류"를 만나게 되었다.
(사실 코딩은 디버그가 5할이상인 듯...ㅎ 인정?)
전혀 문제가 없어보이는 코드였는데 오류가 나서 조금 당황했다.
Quota exceeded.... 어쩌구저쩌구
'reason': 'RATE_LIMIT_EXCEEDED' 어쩌구저쩌구
근데 Quota가 뭐임? --> 해서 찾아보니 "할당량"이더라.
gspread.exceptions.APIError: {'code': 429, 'message': "Quota exceeded for quota metric 'Read requests'
and limit 'Read requests per minute per user' of service 'sheets.googleapis.com'
for consumer 'project_number:388794726996'.", 'status': 'RESOURCE_EXHAUSTED',
'details': [{'@type': 'type.googleapis.com/google.rpc.ErrorInfo', 'reason':
'RATE_LIMIT_EXCEEDED', 'domain': 'googleapis.com', 'metadata': {'service':
'sheets.googleapis.com', 'quota_limit': 'ReadRequestsPerMinutePerUser', 'consumer':
'projects/388794726996', 'quota_metric': 'sheets.googleapis.com/read_requests'}}]}
에러를 보니 코드 자체의 문제라기 보단 API의 문제인 것 같아서 Stackoverflow에 검색해보니
Google sheets API에 요청을 보내는 것에 "할당량 제한"이 있더라....?
즉, 분당 몇 번의 request를 보낼 수 있는 지에 대해 제한이 걸려있었음.
API를 많이 써보지 않아서 그런가 이런 게 있을 거라고는 생각도 못했다.
여틍 이걸보고 '에이 뭐야 그냥 할당량을 1000으로 늘려야겠다~' 했는데
ㅇㅎ... 결제해야 하는 구나...ㅎㅎㅎㅎ
구글 결제 앞에서 공손해지는 두 손...
구글 참 영리하게 돈을 잘 버는 듯. 알파벳 매수각?
역시 different....
그냥 sleep으로 time delay좀 주고 천천히 해야겠다...ㅋㅋㅋㅋㅋ
혹시라도 RATE_LIMIT_EXCEEDED, Quota exceeded for quota metric 'Read requests' 이런 키워드로 오류가 난다면 그냥 request마다 시간을 조금 딜레이시켜보세요!
-끝-
'개발자' 카테고리의 다른 글
Crontab 로그(log) 남기는 방법 (feat. 출력 리다이렉션, 2>&1의 의미) (8) | 2021.08.11 |
---|---|
맥북 작업 스케줄러 (feat. Crontab사용방법, Cron과 Crontab 차이, 파이썬 파일 자동실행) (0) | 2021.08.09 |
[C/C++언어] static 변수를 쓰는 이유 (feat. 메모리 구조) (3) | 2021.05.18 |
Git push, clone, pull 명령어 (2) | 2021.01.15 |
Git add, commit 명령어(feat. Git과 GitHub 차이) (7) | 2021.01.10 |