Puxe dados CSV do URL para a planilha do Google

12

Eu tenho um site que permite que usuários autenticados (leia-se: usuários internos) baixem determinados dados do site no formato CSV, por exemplo, http://example.com/activities.csv . Posso criar uma planilha do Google que extraia seus dados diretamente desse URL?

(A idéia é que eu possa compartilhar a planilha com eles - estamos no mesmo domínio do Google Apps - e pular a etapa de baixar e importar um arquivo CSV toda vez que quisermos atualizar a planilha).

Examinei os menus e a ajuda da planilha e não encontrei um ponto nisso; Gostaria de saber se não é possível ou se estou apenas pesquisando as coisas erradas.

pjmorse
fonte
Por que você não pode simplesmente hospedar esses dados em uma planilha do Google e compartilhar a planilha com eles, ignorando o CSV completamente? Acho que minha pergunta é por que não usar a planilha do Google para extrair os dados em vez de despejar em um CSV.
OnenOnlyWalter
Os dados em questão são perguntas de inventário sobre o uso do site, por exemplo, uma lista de objetos criados por usuários no site para administradores, um tipo de relatório de atividades no próprio site. Se houver uma maneira de extrair esses dados diretamente para uma planilha do Google sem que estejam em CSV, eu adoraria ouvir sobre isso.
Pjmorse
Você está sugerindo o uso de algo como github.com/tricycle/gdata_spreadsheet para enviar os dados diretamente para a planilha?
pjmorse
Exatamente, usando a biblioteca gdata, você pode importar dados e gravar diretamente em uma planilha; no entanto, não sou especialista nessa área, mas pensei em perguntar se havia algum motivo para você evitar as informações do gdata.
OnenOnlyWalter
Não estou evitando, apenas achei mais fácil (até agora) exportar CSV porque ainda não estou familiarizado com as bibliotecas gdata. (Não me inicie na biblioteca CSV com a qual acabei ...) Examinarei o plug-in gdata e verei onde isso me leva.
Pjmorse

Respostas:

21

Solte esta fórmula na primeira célula da sua planilha do Google:

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

E preencherá automaticamente o restante da planilha atual com o número de colunas e linhas necessárias até que todos os dados da fonte original CSV sejam exibidos.

Existem muitas outras maneiras poderosas de alimentar as planilhas do Google de todos os tipos de fontes externas. Confira este artigo para algumas demonstrações.

Zach Harkey
fonte
mas o arquivo está imprimindo alguns dados estranhos, como evitar isso?
AJ AJ
@atjoshi: as células com os dados importados ainda são o resultado da função. a edição pode levar à remoção de todos os dados. É melhor copiar e colar valores somente após o carregamento, se você precisar editar / imprimir os dados.
Mindwin
@atjoshi "Como evitar a impressão de dados estranhos" é uma pergunta nova e diferente, mas provavelmente vale a pena perguntar.
Amanda
Ótimo, mas o problema é que ele não é atualizado automaticamente. importData também não permite que você a referência NOW () função - o que eu tentei colocar ao parâmetro GET ter sempre uma nova url
Fanky
0

Atualize para corrigir a resposta acima para um problema relacionado a folhas que lêem o csv corretamente:

Solte esta fórmula na primeira célula da sua planilha do Google:

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

E preencherá automaticamente o restante da planilha atual com o número de colunas e linhas necessárias até que todos os dados da fonte original CSV sejam exibidos. Existem muitas outras maneiras poderosas de alimentar as planilhas do Google de todos os tipos de fontes externas. Confira este artigo para algumas demonstrações.

Se você estiver usando .csv, precisará garantir que o csv seja lido como uma tabela. Para o uso da fórmula importdata (), tenho lido um .csv armazenado no Google Drive. Depois de garantir que o arquivo .csv tenha as permissões de compartilhamento corretas, vinculo o uso de um link de download para o arquivo .csv;

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

em oposição ao link direto ;

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

ou

https://drive.google.com/file/d/.../view?usp=sharing
Alasdair Duncan
fonte