Estrai i dati CSV dall'URL al foglio di calcolo di Google


12

Ho un sito che consente agli utenti autenticati (leggi: utenti interni) di scaricare alcuni dati dal sito in formato CSV, ad esempio http://example.com/activities.csv . Posso creare un foglio di calcolo di Google che estrae i suoi dati direttamente dall'URL?

(L'idea è che potrei quindi condividere quel foglio di calcolo con loro - siamo nello stesso dominio di app - e saltare il passaggio del download e dell'importazione di un file CSV ogni volta che vogliamo aggiornare il foglio di calcolo.)

Ho consultato i menu di Spreadsheet e ho aiutato e non ho trovato alcuna idea al riguardo; Mi chiedo se non sia possibile o se sto solo cercando le cose sbagliate.


Perché non puoi semplicemente ospitare questi dati in un foglio di lavoro di Google e quindi condividere il foglio con loro, saltando del tutto il CSV? Immagino che la mia domanda sia: perché non usare il foglio di Google per estrarre i dati invece che scaricarli in un CSV.
OnenOnlyWalter,

I dati in questione sono domande di inventario sull'uso del sito Web, ad esempio un elenco di oggetti creati dall'utente sul sito per gli amministratori, una sorta di rapporto di attività sul sito stesso. Se c'è un modo per estrarre questi dati direttamente in un foglio di calcolo di Google senza che sia in CSV, mi piacerebbe saperlo.
pjmorse,

Stai suggerendo di utilizzare qualcosa come github.com/tricycle/gdata_spreadsheet per inviare i dati direttamente al foglio di calcolo?
pjmorse,

Esattamente, usando la libreria gdata, puoi importare dati e scrivere direttamente su un foglio di calcolo, tuttavia non sono un esperto in quell'area, ma ho pensato di chiedere se c'era qualche motivo per cui stai evitando le informazioni di gdata.
OnenOnlyWalter,

Non lo sto evitando, ho appena trovato più semplice (finora) esportare CSV perché non ho ancora familiarità con le librerie di gdata. (Non farmi iniziare sulla libreria CSV con cui sono finito ...) Esaminerò il plugin gdata e vedrò dove mi atterra.
pjmorse,

Risposte:


21

Rilascia questa formula nella prima cella del foglio di lavoro di Google:

=importData("http://example.com/activities.csv")

E riempirà automaticamente il resto del foglio di calcolo corrente con tutte le colonne e le righe di cui ha bisogno fino a quando non vengono visualizzati tutti i dati dal csv di origine originale.

Esistono molti altri modi potenti per alimentare fogli di lavoro Google da tutti i tipi di fonti esterne. Dai un'occhiata a questo articolo per alcune dimostrazioni.


ma il file sta stampando alcuni dati strani, come evitarlo?
Mr AJ,

@atjoshi: le celle con i dati importati sono ancora il risultato della funzione. la modifica potrebbe comportare la rimozione di tutti i dati. Meglio copiare e incollare i valori solo dopo il caricamento, se è necessario modificare / stampare i dati.
Mindwin

@atjoshi "Come evitare la stampa di dati strani" è una domanda nuova e diversa, ma probabilmente vale la pena porre.
Amanda,

Fantastico, ma il problema è che non si aggiorna automaticamente. importData inoltre non consente di fare riferimento alla funzione NOW () - che ho cercato di inserire nel parametro GET per avere sempre un nuovo URL
Fanky

0

Aggiorna per risolvere la risposta sopra per un problema relativo ai fogli che leggono correttamente il CSV:

Rilascia questa formula nella prima cella del foglio di lavoro di Google:

=importData("http://example.com/activities.csv")

E riempirà automaticamente il resto del foglio di calcolo corrente con tutte le colonne e le righe di cui ha bisogno fino a quando non vengono visualizzati tutti i dati dal csv di origine originale. Esistono molti altri modi potenti per alimentare fogli di lavoro Google da tutti i tipi di fonti esterne. Dai un'occhiata a questo articolo per alcune dimostrazioni.

Se si utilizza .csv, è necessario assicurarsi che CSV sia letto come una tabella. Per il mio uso della formula importdata (), ho letto un .csv memorizzato in Google Drive. Dopo aver verificato che .csv disponga delle autorizzazioni di condivisione corrette, collegamento usando un collegamento di download per .csv;

https://docs.google.com/uc?export=download&id=...

al contrario del collegamento diretto ;

https://drive.google.com/open?id=...

o

https://drive.google.com/file/d/.../view?usp=sharing
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.