반응형

0. 들어가기

-. 파이썬에서 구글 document의 spreadsheet (엑셀시트)를 읽고 쓰는 기능을 구현한다.

-. gspread 모듈 사용법을 익힌다.

1. 시작하기

-. 파이썬으로 구글 시트 작업을 위해선 우선 계정 접속 설정을 해야한다. 계정 인증 방식은 두가지로 나뉘는데, Service Account를 설정할 수 있고, 혹은 개별 유저에 대해 Client OAuth를 진행하게 할 수 있다. 나는 나 혼자 쓸 것이기 때문에 Service Account로 진행하도록 하겠다. 

-. 조금 더 깊게 알기 위해서 나중에 이 두개 스택 오버플로우 글을 좀 읽어봐야겠다.  링크1, 링크2  

1) API 사용등록

-. 구글 클라우드 플랫폼(GCP)에서 구글시트 API 신청 페이지에서 사용 버튼 클릭

2) 사용자 인증 정보 만들기

-. 상단의 사용자 인증 정보 만들기서비스 계정 클릭

-. 서비스 계정 만들기 클릭해서 정보 입력. 편집자 or 소유자로 입력해야 모든 권한 접근 가능.

-. 이후 뜨는 API 관리 창에서 계정 이름 재확인 가능.

-. 계정 클릭해서 JSON 키 만들기 선택

3) 구글시트에 api 계정 등록

 

4) 파이썬 코드 작성

-. 앞의 인증과정이 길고 복잡하지, 파이썬 코드 자체는 어렵지 않다. 아래의 예시대로 단 세줄로 시트의 데이터를 불러오는 것이 가능하다.

(1) 데이터 읽어오기

-. get() 함수로 간단하게 가능.

import gspread


def read():
    gc = gspread.service_account(filename="./sheetapi.json")
    sh = gc.open("testSheet").worksheet("시트1")
    print(sh.get('A1'))


if __name__ == '__main__':
    read()

(2) 데이터 쓰기

-. 마찬가지로 update_acell() 함수로 정말 간단하게 쓸 수 있다.

import gspread


def read():
    gc = gspread.service_account(filename="./sheetapi.json")
    sh = gc.open("testSheet").worksheet("시트1")
    print(sh.get('A1'))

    sh.update_acell('A2', "python input")


if __name__ == '__main__':
    read()

728x90
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기