미숑이의 블로그
블로그 홈소개

© 2025 Ryu Mi Sung. All rights reserved.

목차

들어가기 전에
1. 특정 시간이 되면 구글 드라이브에 자동 업로드하기 위한 준비
2. 사용자 요구 사항 변경
3. 사용자 맞춤 설정 기능 추가
4. MVP 완성
이후 작업
인턴자동화

[인턴] 모니터링 자동화 프로그램 - Google Drive API 활용해 자동 업로드하기 (2편)

류미성
2025년 2월 20일

들어가기 전에

Zoom 모니터링을 위한 자동화 프로그램의 마지막 단계는 구글 드라이브에 캡쳐 이미지를 자동으로 업로드하는 것입니다.

  • 자동 업로드의 기대 효과
    • 관련된 사람들은 실시간으로 자료를 확인할 수 있음
    • 직접 업로드로 인한 실수나 누락을 방지할 수 있음

업로드의 안정성을 확보하기 위해 구글 드라이브 API를 활용하여 프로그램을 구현하고자 합니다.


1. 특정 시간이 되면 구글 드라이브에 자동 업로드하기 위한 준비

[필수 준비 작업]

  • 클라이언트 비밀 키(JSON 파일) 다운로드
    • 구글 API에 접근하기 위해 필요한 인증 정보를 담고 있는 비밀 키 파일을 다운로드한다.
  • OAuth 2.0 클라이언트 ID 생성 및 OAuth 동의 화면 구성
    • 구글 계정 접근 권한을 얻기 위해 OAuth 2.0 클라이언트 ID를 생성하고, 사용자에게 요청할 권한을 보여줄 동의 화면을 설정한다.
  • Google API 콘솔에서 프로젝트 생성 및 구글 드라이브 API 활성화
    • Google API 콘솔에서 새로운 프로젝트를 생성하고, 구글 드라이브 API를 활성화하여 해당 프로젝트에서 드라이브 기능을 사용할 수 있도록 설정한다.

[필수 라이브러리 설치]

  • PyDrive: 구글 드라이브 API와의 연동을 쉽게 할 수 있게 도와주는 라이브러리

  • google-auth: 구글 API 인증을 처리하는 라이브러리

  • google-auth-oauthlib: OAuth 2.0 인증을 처리하기 위한 라이브러리

  • google-auth-httplib2: 구글 인증 후 API 요청을 보내는 데 사용되는 라이브러리

    pip3 install PyDrive
    pip3 install google-auth google-auth-oauthlib google-auth-httplib2

[사용자 준비]

  • 구글 드라이브에 자동 업로드가 되려면 해당 드라이브에 대한 접근 및 편집 권한이 필요하므로, 사용자의 노트북은 구글 로그인 상태여야 한다.
  • 미로그인시, 자동업로드 불가

2. 사용자 요구 사항 변경

[폴더 구성과 파일명 변경]

  • 현재 방식) 상위 폴더에서 충돌 발생할 경우 → ‘기존 폴더 대체’ 선택해야 하위 폴더가 합쳐짐
    • KDT - fullstack - 1기 - fullstack_1_20250125 - fullstack_1_202501250900.png
  • 대안) 폴더 이름을 세세하게 나누지 않고, 한 폴더 안에 하위 폴더를 넣는 방식으로 변경.
    • KDT - fullstack_1_20250125 - fullstack_1_202501250900.png

2c962233-6f05-4050-9bcc-3723732a332b.png

3. 사용자 맞춤 설정 기능 추가

  • 기수, 주기 입력: 사용자가 기수와 주기를 입력하여 수정 가능.
  • 저장 위치 변경: 기본 저장 위치는 바탕화면이며, 변경 가능.
  • 구글 드라이브 링크 확인: 업로드된 링크를 확인하고, ‘열기’ 버튼으로 업로드 여부 확인 가능.
  • 캡쳐 시간 변경: 기본 시작 시간은 09:00, 종료 시간은 18:00이며, 변경 가능.

4. MVP 완성

  • 약 500장의 사진을 업로드하는 데 약 50분이 소요되지만, 구글 로그인이 정상적으로 되어 있다면 자동 업로드는 문제 없이 진행된다.

bbbbc8f8-e31a-4bef-bc18-f56c4c0504c7.png


이후 작업

  • 현재는 Google Drive 업로드가 가능하지만 몇 가지 우려되는 점이 있어요.
    • Zoom 수업 종료 후 업로드 완료까지 약 50분이 소요되어, 해당 시간이 지나야 노트북을 종료할 수 있다는 번거로움
    • 또한, 현재는 자동 업로드를 위해 구글 로그인이 필수여서 20대의 노트북에 각각 로그인해야 하는 불편함이 있으며, 계정 관리 측면에서 보안 우려
  • 위 문제를 해결한 과정은 아래 링크에서 확인👇
    • [인턴] 모니터링 자동화 프로그램 - rclone으로 Google Drive 업로드 시간 80% 단축 (3편)