당신이 뭔가 개발하면서 테이블 형식의 결과값을 어딘가에 저장해야 하는 경우, 보통 다음과 같은 선택지가 있을 겁니다.
- 로컬 파일에 뱉는다 = 매번 서버에 접속해서 로컬 파일을 확인해야 하는 번거로움이 기다리고 있습니다.
 
- 어딘가에 DB 서버를 띄우고 거기에다 쓴다 = 1보다도 더한 관리 비용을 지불하시겠다구요... 네, 알겠습니다.
 
- 남이 제공하는 좋은 솔루션을 활용한다 <- 바로 여기
 
Google sheet를 쓴다면 다음과 같은 장점이 있습니다.
- 일단 확인이 간편하다: 바로 웹에서 확인 가능하다는 게 개인적으로 큰 장점이었습니다.
 
- 앱에서 접근이 손쉽다: 설정만 잘 하면...
 
다만 설정을 좀 해줘야 하고, 여기서 뜬금없는 Google cloud가 의존성으로 나옵니다;; 글이 너무 길어지니 핵심만 정리하면 - https://docs.gspread.org/en/latest/oauth2.html#for-bots-using-service-account 에서 설명하고 있는데, 당신의 앱이 여기서 말하는 봇이라고 생각하면 됩니다.
대충 만들어본 예제 코드:
import gspread
class GSheet:
    def __init__(self, spreadsheet_name):
        self.gc = gspread.service_account(filename='serviceaccount.json')
        self.spreadsheet = self.gc.open(spreadsheet_name)
        self.worksheet = self.spreadsheet.get_worksheet(0)
    def append_row(self, row):
        self.worksheet.append_row(row)
    def append_if_not_exist(self, row):
        """Using first column as primary key, append the row if the key does not exist"""
        key = row[0]
        key_values = set(self.worksheet.col_values(1))
        if key in key_values:
            return
        self.append_row(row)
이 글이 도움이 되셨다면 구독, 좋아요, 알림설정 부탁드립니다. 감사합니다.
PS: 가입 기념으로 쓸데없는 글을 한번 써 봤는데, 기본 편집기는 너무 안좋은 것 같습니다. 차라리 외부 마크다운 문서를 바로 붙여넣기 할 수 있게 해주면 더 좋을 것 같습니다.