iterative / iterative/PyDrive2

A simple way of initializing a pydrive.GoogleDrive object fails when pydrive is replaced by pydrive2

Open
#298 1 comment 0 reactions 0 assignees View on GitHub
duplicate question
Dominant language
Python
Stars
670
Forks
75
PR merge metrics
No merged PRs in 30d

Description

The following code works when executed in Google Colab. The code is, in fact, copied from one of the official Google Colab tutorials, the one titled [External data: Local Files, Drive, Sheets, and Cloud Storage](https://colab.research.google.com/notebooks/io.ipynb?hl=en#scrollTo=7taylj9wpsA2).

```
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
from google.colab import auth
from oauth2client.client import GoogleCredentials

auth.authenticate_user()
gauth = GoogleAuth()
gauth.credentials = GoogleCredentials.get_application_default()
drive = GoogleDrive(gauth)
```

However, when `pydrive` is replaced by `pydrive2` in the above listing, and the code is executed in Google Colab, the following error messages result:

```
---------------------------------------------------------------------------
MessageError Traceback (most recent call last)
[](https://localhost:8080/#) in ()
----> 1 auth.authenticate_user()
2 gauth = GoogleAuth()
3 gauth.credentials = GoogleCredentials.get_application_default()
4 drive = GoogleDrive(gauth)

2 frames
[/usr/local/lib/python3.10/dist-packages/google/colab/_message.py](https://localhost:8080/#) in read_reply_from_input(message_id, timeout_sec)
101 ):
102 if 'error' in reply:
--> 103 raise MessageError(reply['error'])
104 return reply.get('data', None)
105

MessageError: Error: credential propagation was unsuccessful
```

Why doesn't the code work with `pydrive2`? Can `pydrive2` be made to work with this code? If not, is there a simple alternative?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.