-
-
Save harmzway/6cd251b185e41b8d10f890a7c601973a to your computer and use it in GitHub Desktop.
YouTube-OAuth-Snippets
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# token.pickle stores the user's credentials from previously successful logins | |
if os.path.exists('token.pickle'): | |
print('Loading Credentials From File...') | |
with open('token.pickle', 'rb') as token: | |
credentials = pickle.load(token) | |
# Google's Request | |
from google.auth.transport.requests import Request | |
# If there are no valid credentials available, then either refresh the token or log in. | |
if not credentials or not credentials.valid: | |
if credentials and credentials.expired and credentials.refresh_token: | |
print('Refreshing Access Token...') | |
credentials.refresh(Request()) | |
else: | |
print('Fetching New Tokens...') | |
flow = InstalledAppFlow.from_client_secrets_file( | |
'client_secrets.json', | |
scopes=[ | |
'https://www.googleapis.com/auth/youtube.readonly' | |
] | |
) | |
flow.run_local_server(port=8080, prompt='consent', | |
authorization_prompt_message='') | |
credentials = flow.credentials | |
# Save the credentials for the next run | |
with open('token.pickle', 'wb') as f: | |
print('Saving Credentials for Future Use...') | |
pickle.dump(credentials, f) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment