Profilo di giord99

Nome giord99
Indirizzo email n/a
Messaggi1
  • Lettura di un file csv da Google Sheets con python
    Forum >> Programmazione Python >> Files e Directory
    Salve a tutti, buona giornata!

    Per un progetto di lavoro devo leggere, con Python, un foglio di lavoro di Google Sheets salvato nel Drive dell'azienda per cui sto facendo questo progetto. Lo scopo è creare uno script che ogni volta che viene eseguito scarichi questo file (che è un file csv che contiene delle stringhe che rappresentano delle coordinate geografiche associate ad una specifica località) e lo carichi sul software QGIS, il quale poi trasforma quei dati e li trasferisce in una mappa. Lo scopo, in sintesi, è che QGIS legga in automatico i dati che vengono caricati sul file .csv caricandoli nella mappa.

    Per fare quello che mi sono proposto, dal momento che quel file non è un file pubblico, ho creato un progetto in Google Cloud, ho abilitato l'API di Google Sheets e ho creato la relativa chiave come file json per poter accedere con le relative credenziali. In seguito ho condiviso il file che devo scaricare con la mail relativa all'account di servizio associata al progetto e ho preso questo script (adattandolo alle mie esigenze) dalla guida ufficiale di Google relativa alle API di Sheets per Python (cioè da qui: https://developers.google.com/.../api/quickstart/python...)

    Il codice che ho scritto (cioè adattato) lo allego nella domanda che sto facendo, almeno è visibile. Ovviamente non si tratta del codice definitivo, nel senso che rappresenta un "test" di quello che devo fare utilizzando un mio file personale

    Eseguendolo, ottengo il seguente messaggio di errore:

    "

    File "c:\Python311\Lib\site-packages\googleapiclient\_helpers.py", line 130, in positional_wrapper
    return wrapped(*args, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^
    File "c:\Python311\Lib\site-packages\googleapiclient\http.py", line 938, in execute
    raise HttpError(resp, content, uri=self.uri)
    googleapiclient.errors.HttpError: <HttpError 400 when requesting https://sheets.googleapis.com/v4/spreadsheets/1xJO2I8ZCb34N0GB0ahfhx57zES35oGOJjjIGViZvWs8/values/Loan%21A1%3AG16?alt=json returned "Unable to parse range: Loan!A1:G16". Details: "Unable to parse range: Loan!A1:G16">

    "

    In pratica non riesco a capire cosa sto sbagliando. Quindi vorrei da voi 1) un feedback se il mio codice ha senso per fare quello che mi sono proposto; 2) Se esiste un modo, nel qual caso mi piacerebbe discuterne con voi, per fare la stessa cosa senza l'utilizzo di API; 3) se mi potreste aiutare a portare a termine quello che mi sono proposto di fare suggerendomi le modifiche specifiche che devo fare.

    Grazie mille per l'aiuto!