2014-09-11 17 views
6

Sto cercando di imparare come accedere a Google Drive da Python ma ho dei problemi.Errore nel tentativo di accedere a "google drive" con python (codice sorgente google quickstart.py)

Ho seguito il tutorial del sito web ufficiale di Google: https://developers.google.com/drive/...t-python?hl=es Inoltre, ho visto il video tutorial su questo, penso di fare esattamente lo stesso dei ragazzi del video.

vi dico i passi che ho seguito alla lettera:

1 - Installare strumento PIP per installare l'SDK di Google.

2 - Installare lo SDK di Google: "PIP installare --upgrade google-api-python-client"

In questa fase tutto va bene, in effetti per le importazioni ecc Non v'è alcuna colpa.

3 - Abilitazione traslazione L'API: Seguo i passi così come sono, di creare un "ID cliente per un'applicazione nativa" e un "ID client per il web applicazione"

4 - creo il documento documento". txt "e copia il codice sorgente all'avvio rapido.

5 - sostituisco "CLIENT_ID" e "CLIENT_SECRET" comparendo in "id client per un'applicazione nativa" (ho anche provato con l'applicazione web)

6 - corro, e l'output dello schermo è:

No handlers could be found for logger "oauth2client.util" 
Go to the following link in your browser: 
<link> 
Enter verification code: 

ricerca di una soluzione, ho trovato qualcosa per ottenere alcune informazioni su questo errore:

import logging 
... 
logging.basicConfig() 

Ora, l'output è:

C:\workspaces\asd\prsGoogleApi>quickstart.py 
WARNING:oauth2client.util:__init__() takes at most 4 positional arguments (5 giv 
en) 
Go to the following link in your browser: 
<link> 
Enter verification code: 

Se provo ad accedere a quel link, l'errore è:

401 - That's an error 
Error: invalid_client. 
No application name. 

Request details: 
response_type=code 
scope=https://www.googleapis.com/auth/drive 
access_type=offline 
redirect_uri=urn:ietf:wg:oauth:2.0:oob 
client_id=... 

risposta

1

ho trovato il problema, era che non avevo messo il mio indirizzo e-mail e il nome del cliente nella sezione "schermo Consenso" .

Ora funziona bene.

5

Il modulo in questione oauthclient.util fa alcune supposizioni secondo cui è stata stabilita la registrazione e questo avviso sta effettivamente mascherando un avviso/errore più dettagliato che ha tentato di scrivere nel registro.

Se si aggiunge un po 'di registrazione per il proprio codice allora dovrebbe rivelare l'errore di fondo:

import logging 
logging.basicConfig() 

è stato sufficiente per sostituire l'aspetto della errore di cui sopra con il vero errore nel mio uscita (YMMV).

Una volta risolto, è possibile rimuovere queste due linee in modo sicuro (anche se probabilmente finirai qui di nuovo in caso di problemi).

Questa domanda è arrivata in una ricerca su google per No handlers could be found for logger "oauth2client.util" accanto a this issue e this issue.

0

In realtà l'aggiunta del codice sopra indicato risolve completamente il problema.

import logging 
logging.basicConfig(filename='debug.log',level=logging.DEBUG) 
Problemi correlati