Skip to content
조회 수 1674 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

H열의 예정일 값이 현재일에서 10일을 더한 값에 속한다면 지메일로 메일을 보내는 스크립트

 

파이썬과 Google API를 사용하여 지메일로 메일을 보내는 스크립트를 만들 수 있습니다. 아래는 스크립트입니다.

 


import datetime

import os.path

import pickle

from google.auth.transport.requests import Request

from google_auth_oauthlib.flow import InstalledAppFlow

from googleapiclient.errors import HttpError

from googleapiclient.discovery import build

from google.oauth2.credentials import Credentials

 

# 구글 클라우드 플랫폼에서 받은 클라이언트 ID와 시크릿 ID를 입력하세요.

CLIENT_ID = 'YOUR_CLIENT_ID'

CLIENT_SECRET = 'YOUR_CLIENT_SECRET'

 

# 필요한 스코프 설정(이메일 보내기)

SCOPES = ['https://www.googleapis.com/auth/gmail.send']

 

# 사용자 인증을 위한 크리덴셜 가져오기(없다면 인증 창을 띄움)

creds = None

if os.path.exists('token.pickle'):

    with open('token.pickle', 'rb') as token:

        creds = pickle.load(token)

if not creds or not creds.valid:

    if creds and creds.expired and creds.refresh_token:

        creds.refresh(Request())

    else:

        flow = InstalledAppFlow.from_client_secrets_file(

            'credentials.json', SCOPES)

        creds = flow.run_local_server(port=0)

    with open('token.pickle', 'wb') as token:

        pickle.dump(creds, token)

 

# Gmail API 클라이언트 인스턴스 만들기

service = build('gmail', 'v1', credentials=creds)

 

# 예정일을 현재일에서 10일 이후로 설정합니다.

due_date = datetime.datetime.now() + datetime.timedelta(days=10)

 

# H열의 값을 가져오기 위해 구글 시트 API를 사용합니다.

sheet_service = build('sheets', 'v4', credentials=creds)

sheet_id = 'YOUR_SHEET_ID'

range_name = 'Sheet1!H2:H'

result = sheet_service.spreadsheets().values().get(spreadsheetId=sheet_id, range=range_name).execute()

values = result.get('values', [])

if not values:

    print('No data found.')

else:

    for row in values:

        if row:

            if datetime.datetime.strptime(row[0], '%m/%d/%Y') == due_date.date():

                # H열의 예정일 값이 현재일에서 10일 이후로 설정된 경우 이메일 보내기

                message = create_message('YOUR_EMAIL_ADDRESS', 'TO_EMAIL_ADDRESS', 'Subject', 'Message Text')

                send_message(service, 'me', message)

                print('Email sent.')

            else:

                print('No email to send.')

 

def create_message(sender, to, subject, message_text):

  """Create a message for an email.

 

  Args:

    sender: Email address of the sender.

    to: Email address of the recipient.

    subject: The subject of the email message.

    message_text: The text of the email message.

 

  Returns:

    An object containing a base64url encoded email object.

  """

  message = MIMEText(message_text)

  message['to'] = to

  message['subject'] = subject

  message['from'] = sender

  return {'raw': base64.urlsafe_b64encode(message.as_bytes()).decode()}

 

def send_message

 

 

로그인 후 댓글쓰기가 가능합니다.

?

  1. 26
    Nov 2022
    10:39

    파이썬 화면 캡쳐하기

    Category파이썬 Views19344
    Read More
  2. 26
    Nov 2022
    10:31

    Windows용 Tesseract 설치 및 사용법

    Category파이썬 Views19562
    Read More
  3. 21
    Nov 2022
    09:04

    파이썬 글자 인식, 파이썬 OCR, 파이썬 Tesseract 사용

    Category파이썬 Views14644
    Read More
  4. 21
    Sep 2022
    12:54

    지존오토 메뉴얼 익스트림 화면 분석기(여러 개의 순환구조)

    Category컴퓨터잡담 Views21580
    Read More
  5. 14
    Jul 2022
    15:08

    특정 파일을 제외한 현재 디렉토리 내의 모든 파일을 삭제하는 배치파일

    Category컴퓨터잡담 Views33041
    Read More
  6. 08
    Jun 2022
    08:47

    자바스크립트 종말각?! HTML에서 파이썬 실행하는 PyScript 등장!

    Category파이썬 Views31467
    Read More
  7. 08
    May 2022
    08:40

    파이썬 파이인스톨러 설치하기

    Category파이썬 Views21423
    Read More
  8. 08
    May 2022
    08:38

    파이썬 구글스프레드시트 값 불러오기 html로 변환작업 중!

    Category파이썬 Views20191
    Read More
  9. 27
    Mar 2022
    08:12

    파이썬 googleapiclient 모듈이 설치가 안될때 해결방법

    Category파이썬 Views9889
    Read More
  10. 09
    Mar 2022
    22:45

    Visual Studio Code 파이썬 인터프리터 경로 변경하기

    Category파이썬 Views9291
    Read More
  11. 09
    Mar 2022
    22:39

    윈도우10 ALT + TAB 창 전환이 안될 때 대처방법

    CategoryWindowsTip Views9252
    Read More
  12. 13
    Feb 2022
    07:34

    파이썬 ModuleNotFoundError: No module named 'pip' 갑자기 나타난 오류!

    Category파이썬 Views4110
    Read More
  13. 26
    Jan 2022
    19:45

    [구글스프레드시트] 현재의 셀주소 참조(address, cell)

    Category[Docs]스프레드시트 Views6501
    Read More
  14. 22
    Jan 2022
    08:25

    pytube 사용방법

    Category파이썬 Views4193
    Read More
  15. 31
    Oct 2021
    12:12

    파이썬 정규표현식 (Regular Expressions)

    Category파이썬 Views3200
    Read More
  16. 26
    Oct 2021
    06:06

    로지텍

    Category컴퓨터잡담 Views2461
    Read More
  17. 26
    Oct 2021
    05:59

    python html tag 제거 경로 금지 문자 제거

    Category파이썬 Views3219
    Read More
  18. 10
    Oct 2021
    07:37

    PC를 자동으로 부팅시작

    Category컴퓨터잡담 Views4115
    Read More
  19. 28
    Sep 2021
    13:31

    로블록스 스튜디오하늘에서 부품을 무작위로 떨어뜨리는 스크립트

    Category컴퓨터잡담 Views2605
    Read More
  20. 28
    Sep 2021
    12:15

    로블록스 스튜디오 파트속성

    Category컴퓨터잡담 Views3097
    Read More
Board Pagination Prev 1 2 3 4 5 ... 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소