Google Sheets 활용법/ReviewChecker

ReviewCheck (2-2) - Python과 Google Sheet의 연동을 확인해보자!

Mr.Lazy 2024. 7. 2. 16:47
spreadsheet_url = '여기에 구글시트 URL을 작성해주세요.'

 

지난 글에서 파이썬과 구글시트 연동을 위한 준비가 끝났습니다.

이번에는 파이썬을 통해 구글시트 정보를 조회하고 편집해보도록 하겠습니다.


 

 

Visual Studio Code를 열고 지난번에 만들어둔 review.py 파일에 코드를 적어보도록 하겠습니다.

 

print("hello world")

 

우선 이제 국룰인 "hello world" 를 출력해보겠습니다.

 

 

1. 코드입력

2. 실행

3. 출력 확인

 

파이썬 코드가 잘 실행되는것을 볼수 있습니다.

 

그럼 파이썬이 잘 작동되는것은 확인 되었으니 이제 파이썬과 구글시트가 잘 연동 되는지 확인해 보겠습니다.

 

하지만 저는 해당 코드를 작성할 능력이 없기 때문에 GPT에게 부탁하겠습니다.
(GPT 무료 버전은 3.5, 유료 버전은 4o 버전을 사용할수 있습니다. 3.5로도 가능은 하지만 개인적으로 자주 쓰실 예정이시라면 최신 버전 사용을 추천드립니다.)

 

하얀색으로 칠한곳에는 본인의 구글시트 주소를 넣으시면 됩니다.

 

 

그럼 이제 GPT가 알려준대로 진행해볼까요?

 

1. 라이브러리 설치

pip install gspread oauth2client

 

해당 코드를 통해 라이브러리를 설치해야하는데 어디에 코드를 작성해야할까요?

 

Visual Studio Code - Terminal - New Terminal을 클릭합니다.

 

그럼 이렇게 New Terminal이 생성되게 되는데 여기에 코드를 작성해줍니다.

 

그럼 설치가 완료 되었습니다.

 

그럼 이제 코드를 작성해볼까요?

GPT가 알려준 코드를 아까 print("hello world")를 작성한 곳에 복붙(복사 붙여넣기)   해보도록 하겠습니다.

 

import gspread
from oauth2client.service_account import ServiceAccountCredentials

# 구글 시트 정보
spreadsheet_url = '여기에 구글시트 URL을 작성해주세요.'

# 자격 증명 파일 경로 (다운로드한 JSON 파일)
credentials_file = '여기에 키 파일 경로를 작성해주세요.'

# 접근할 시트 이름
sheet_name = '여기에 데이터를 불러올 시트 이름을 작성해주세요.'

# 구글 API 권한 설정
scope = ['https://spreadsheets.google.com/feeds',
         'https://www.googleapis.com/auth/drive']

credentials = ServiceAccountCredentials.from_json_keyfile_name(credentials_file, scope)
client = gspread.authorize(credentials)

# 시트 열기
spreadsheet = client.open_by_url(spreadsheet_url)
sheet = spreadsheet.worksheet(sheet_name)

# B열의 데이터 읽기
column_b = sheet.col_values(2)

# 결과 출력
print("B열 데이터:")
for value in column_b:
    print(value)

 

 

GPT가 작성한 코드를 살짝 보기 쉽게 바꿨는데요.

 

spreadsheet_url = '여기에 구글시트 URL을 작성해주세요.'

 

이곳에는 작은따옴표 안에 사용하실 구글시트 URL을 넣으시면 됩니다.


credentials_file = '여기에 키 파일 경로를 작성해주세요.'

 

이곳에는 이전에 다운받은 JSON 키 파일의 경로를 넣어주시면 됩니다.
※ 꿀팁

Shift + 오른쪽 마우스로 SON 키 파일을 클릭하면 "경로로 복사"를 사용할 수 있습니다.

 

이것도 마찬가지로 작은 따옴표 안에 경로를 넣어주시면 됩니다.


sheet_name = '여기에 데이터를 불러올 시트 이름을 작성해주세요.'

 

이곳에는 작은 따옴표 안에 시트 이름을 넣어주시면 됩니다.


 

이제 작성한 코드를 실행해볼까요?

 

터미널에 제 후기시트의 데이터가 잘 조회되는 걸 볼수 있습니다.

 

이제 파이썬으로 제 구글시트에 뭔가를 작성해볼까요?

 

GPT에게 제 코드를 주고 A6셀 에 숫자 7을 작성해달라고 해보겠습니다.

(보안에 민감하신 분들은 JSON 파일의 경로 값이나 구글시트 URL을 수정해서 GPT에게 질문하기를 권장드립니다.)

(물론 코드를 작성하실때는 원래 JSON 파일의 경로 값과 구글시트 URL로 수정하셔야합니다.)

 

 

이제 GPT가 알려준 코드를 Visual Studio Code에 복붙하도록 합니다.

from oauth2client.service_account import ServiceAccountCredentials
import gspread

# 구글 시트 API 사용을 위한 인증 정보 설정
scope = ['https://www.googleapis.com/auth/spreadsheets']
json_keyfile = r'여기에 키 파일 경로를 작성해주세요.'

creds = ServiceAccountCredentials.from_json_keyfile_name(json_keyfile, scope)
client = gspread.authorize(creds)

# 구글 시트 문서 가져오기
spreadsheet_url = '여기에 구글시트 URL을 작성해주세요.'
sheet = client.open_by_url(spreadsheet_url)

# 시트 이름으로 워크시트 선택
worksheet = sheet.worksheet('후기')

# B열의 데이터 가져오기
column_b = worksheet.col_values(2)

# 결과 출력
print("B열 데이터:")
for cell in column_b:
    print(cell)

# A6 셀에 숫자 7 작성하기
cell_to_update = 'A6'
value_to_write = 7
worksheet.update_cell(6, 1, value_to_write)
print(f"{cell_to_update}에 {value_to_write} 작성 완료!")

 

이제 실행해볼까요?

7이 작성 됨

 

터미널에도 표시 됨

7이 작성되는 것을 확인 할 수 있습니다.


다음 글에서는 네이버 카페 글의 구조를 파악해 파이썬이 본문을 찾을 수 있도록 하는 코드를 작성해보겠습니다!

다음글에서 또 봐요~ (*ˊᵕˋ*)ノ

 

진행하시면서 막히는 부분이나 궁금한 점 있으실 경우 댓글이나 아래 메일로 여쭤보시면 열심히 답변드려보도록 하겠습니다!

- amos1592@naver.com