]>
vault307.fbx.one Git - mu_code.git/blob - newGT.py
6 from email
.mime
.text
import MIMEText
7 from google
.auth
.transport
.requests
import Request
8 from google
.oauth2
.credentials
import Credentials
9 from google_auth_oauthlib
.flow
import InstalledAppFlow
10 from googleapiclient
.discovery
import build
13 SCOPES
=['https://www.googleapis.com/auth/spreadsheets.readonly',
14 'https://mail.google.com/']
15 SPREADSHEET
='1cEviBnbCudweCIVYzHa1GX9l8feFwXMSdqkpDIX-E-A'
16 RANGE
='goodMessages!A:A'
18 # authorization from credentials to token
20 """the file token-gt.json stores access/refresh tokens, and is
21 created automatically when auth flow completes first time"""
22 if os
.path
.exists('token-gt.json'):
23 creds
=Credentials
.from_authorized_user_file('token-gt.json',SCOPES
)
24 # If there are no (valid) credentials available, let the user log in
25 if not creds
or not creds
.valid
:
26 if creds
and creds
.expired
and creds
.refresh_token
:
27 creds
.refresh(Request())
29 flow
=InstalledAppFlow
.from_client_secrets_file(
30 'credentials-sheets.json', SCOPES
)
31 creds
=flow
.run_local_server(port
=0)
32 # Save credentials for next run
33 with open('token-gt.json','w') as token
:
34 token
.write(creds
.to_json())
37 sheetsServ
=build('sheets','v4', credentials
=creds
)
38 result
=sheetsServ
.spreadsheets().values().get(spreadsheetId
=SPREADSHEET
,\
39 range=RANGE
).execute()
40 rows
=result
.get('values',[])
41 texts
=list(itertools
.chain(*rows
))
42 text
=texts
[(random
.randint(0,(len(texts
)-1)))]
46 mailServ
=build('gmail','v1', credentials
=creds
)
48 def create_message(sender
,to
, subject
, message_text
):
49 """Create a message for an email.
51 sender: Email address of sender
52 to: Email address of receiver
53 subject: The subject of the email message
54 message_text: the text of the email message
57 an object containing a base64url encoded email object
59 message
=MIMEText(message_text
)
61 message
['from']=sender
62 message
['subject']=subject
63 return{'raw':base64
.urlsafe_b64encode(message
.as_string().encode()).
66 LIVE
='6055954622@vtext.com' #KATIE
67 TESTING
='6059295681@vtext.com' #JIMMY
68 message
=create_message(sender
='me',to
=LIVE
,
69 subject
='',message_text
=text
)
71 eMessage
=(mailServ
.users().messages().
72 send(userId
='me', body
=message
).execute())