0

I am new in Python and trying use Google Drive Apis, but facing this issue.
Error I am getting after running python quickstart.py

Traceback (most recent call last):
  File "quickstart.py", line 9, in <module>
    creds = store.get()
  File "/usr/local/lib/python3.6/site-packages/oauth2client/client.py", line 407, in get
    return self.locked_get()
  File "/usr/local/lib/python3.6/site-packages/oauth2client/file.py", line 54, in locked_get
    credentials = client.Credentials.new_from_json(content)
  File "/usr/local/lib/python3.6/site-packages/oauth2client/client.py", line 302, in new_from_json
    module_name = data['_module']
KeyError: '_module'
  • I have generated client_secret.json file as per the Python Quickstart tutorial.
  • All the file are in the same directory as that of quickstart.py.

Here is how my quickstart.py file looks.

from __future__ import print_function
from apiclient.discovery import build
from httplib2 import Http
from oauth2client import file, client, tools

# Setup the Drive v3 API
SCOPES = 'https://www.googleapis.com/auth/drive.metadata.readonly'
store = file.Storage('credentials.json')
creds = store.get()
if not creds or creds.invalid:
    flow = client.flow_from_clientsecrets('client_secret.json', SCOPES)
    creds = tools.run_flow(flow, store)
service = build('drive', 'v3', http=creds.authorize(Http()))

# Call the Drive v3 API
results = service.files().list(
    pageSize=10, fields="nextPageToken, files(id, name)").execute()
items = results.get('files', [])
if not items:
    print('No files found.')
else:
    print('Files:')
    for item in items:
        print('{0} ({1})'.format(item['name'], item['id']))

UPDATE: I checked and it turns out that credentials.json file is auto-generated on the first run and for some reason, this is not happening.

KeyError: '_module'

This key _module is suppose to be present in credentials.json file and that is why this error is thrown. Not sure what is missing. Can someone please tell me how to resolve this issue.

Rana Ranvijay Singh
  • 6,055
  • 3
  • 38
  • 54
  • And your question is? I dont think creating an empty credeitals.json file is going to work your code will need the credentials to run. – Linda Lawton - DaImTo May 08 '18 at 10:54
  • How to resolve this given error. The downloaded credentials are there in client_secret.json file as per the instructions given in the document. Python Quickstart – Rana Ranvijay Singh May 09 '18 at 05:01

1 Answers1

1

Similar issue here Try to remove both files from your directory - "credentials.json" and "client_secret.json". Then re-generate your credentials and re-create "client_secret.json", this worked for me.