2017-08-25 4 views
0

J'essaie de lire et d'écrire depuis et vers une feuille de calcul Google. J'ai trouvé ce tutoriel en ligne, ce qui semble fonctionner pour beaucoup de gens:Google Sheets - Délai d'attente d'accès Python

https://www.twilio.com/blog/2017/02/an-easy-way-to-read-and-write-to-a-google-spreadsheet-in-python.html?utm_source=youtube&utm_medium=video&utm_campaign=youtube_python_google_sheets

Ce que je l'ai fait jusqu'à présent:

  • a créé les lettres de créance selon le guide et téléchargé le. json file
  • J'ai partagé une copie de la feuille de calcul Legislator (maintenant dans mon Google Drive) avec l'e-mail du client.

  • J'ai reçu un message électronique après avoir partagé que le message n'a pas été remis car le domaine du compte de service n'a pas été trouvé.

  • I a adopté le code

    import gspread 
    from oauth2client.service_account import ServiceAccountCredentials 
    
    scope = ['https://spreadsheets.google.com/feeds'] 
    creds = ServiceAccountCredentials.from_json_keyfile_name('client_secret.json', scope) 
    client = gspread.authorize(creds) 
    
    sheet = client.open("Copy of Legislators 2017", scope) 
    list_of_hashes = sheet.get_all_records() 
    print(list_of_hashes) 
    

Le fichier client_secret.json est dans le même dossier que le projet.

enter image description here

Mais quand je lance le code, je reçois l'erreur suivante:

enter image description here

Le japonais dit: « Il n'a pas été possible de se connecter car le callee connecté n'a pas répondu correctement même après une certaine période de temps. Ou l'hôte connecté a échoué parce que l'hôte connecté n'a pas répondu. "

Il semble y avoir un problème avec la connexion, mais je n'ai aucune idée de la façon de le réparer. En outre, tout en recherchant, j'ai trouvé que la partie scope est toujours différente. Quelqu'un peut-il m'expliquer ce qu'il faut insérer ici? Quelqu'un at-il une expérience avec elle? Merci pour votre aide :)

Répondre

0

Assurez-vous que votre OAuthclientID est valide et que vous avez activé l'API Sheets dans votre console Google Dev.

Ensuite, essayez d'utiliser l'étendue Sheetsv4 à la place. Je me souviens avoir rencontré quelques erreurs quand j'ai utilisé le scope pour v3. Donc, j'espère, cela vous aide:

import gspread 
from oauth2client.service_account import ServiceAccountCredentials 
import pprint 

scope = ['https://www.googleapis.com/auth/spreadsheets'] 
creds = ServiceAccountCredentials.from_json_keyfile_name('client_secret.json', scope) 
client = gspread.authorize(creds) 

sheet = client.open('NAME_OF_GOOGLE_SHEET').sheet1 

pp = pprint.PrettyPrinter() 

# get all the records 
result = sheet.get_all_records() 

pp.pprint(result)