iterative / iterative/PyDrive2
A simple way of initializing a pydrive.GoogleDrive object fails when pydrive is replaced by pydrive2
- 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
Assessment
This issue has not been assessed yet.