Função Planilhas Google para obter um URL encurtado (de Bit.ly ou goo.gl etc.)

9

Eu tenho uma planilha do Google que cria links do Google Analytics. Eu gostaria de diminuir esses links. Eu tentei o exemplo Bit.ly, mas mesmo o exemplo deles não funciona.

Como posso fazer isso?

Clay Nichols
fonte

Respostas:

12

Esse pequeno código possibilita a criação de URLs encurtados, com o uso do Script do Google Apps e da API do encurtador de URL.

Pré-requisitos

Em recursos no editor de scripts ( Ferramentas> Editor de scripts ), selecione os Serviços avançados do Google e ative o UrlShortener: em insira a descrição da imagem aqui
seguida, acesse o Google Developers Console e selecione o URL da API: insira a descrição da imagem aqui
ative a API e cole o código no editor de scripts. Pressione o botão do bug para autenticar o script

Código

function onOpen() {
  SpreadsheetApp.getUi()
    .createMenu("Shorten")
    .addItem("Go !!","rangeShort")
    .addToUi()  
}

function rangeShort() {
  var range = SpreadsheetApp.getActiveRange(), data = range.getValues();
  var output = [];
  for(var i = 0, iLen = data.length; i < iLen; i++) {
    var url = UrlShortener.Url.insert({longUrl: data[i][0]});
    output.push([url.id]);
  }
  range.offset(0,1).setValues(output);
}

Explicado

A função onOpen () criará um item de menu para você selecionar, com o nome Encurtar . Sempre que você abrir o arquivo, esse item de menu será adicionado (se você estiver no editor de scripts, selecione a função no menu suspenso e pressione o botão play. Isso executará essa função específica e o item será adicionado a o cardápio).

Depois que o menu for criado, ele exibirá o item Ir !! . Selecione a célula ou o intervalo que você deseja reduzir e o script criará os URLs reduzidos e os adicionará à planilha.

Captura de tela

antes
insira a descrição da imagem aqui

depois de
insira a descrição da imagem aqui

Nota

O código pressupõe que, depois de selecionar a célula ou o intervalo a ser reduzido, o resultado será adicionado à direita da célula / intervalo selecionado ( OFFSET(0,1)).
Se você deseja simplesmente substituir o URL existente, altere o código para este: ( OFFSET(0,0)).

Exemplo

Criei um arquivo de exemplo para você: Criar URLs encurtados

Referências

  1. encurtador de URL
  2. deslocamento (Inteiro, Inteiro)
  3. onOpen ()
Jacob Jan Tuinstra
fonte
Isso é ótimo. É possível que o script seja executado automaticamente se um URL for adicionado à planilha?
precisa saber é o seguinte
@ Craig.Pearce Como, através de um Formulários Google, você quer dizer?
Jacob Jan Tuinstra
Não, eu estava pensando mais sobre as linhas de um ouvinte de eventos, para que, se o usuário colocar um URL em A2, esse script seja executado automaticamente e coloque a versão abreviada em B2.
precisa saber é o seguinte
Parece que isso não funciona mais porque o Google desativou o serviço de encurtador de URL.
Jim McKeeth
8

O TinyURL possui uma API que cospe um arquivo de texto com o link reduzido. Se você usar a função IMPORTAR DADOS, poderá pegar o texto dessa página. Você também precisa usar a função CONCATENATE para encadear a URL.

A estrutura da API tinyurl é http://tinyurl.com/api-create.php?url=YOURLINKHERE

Importação de dados a partir desse link, obviamente, não iria para uma ligação válida, mas que seria de entrada: http://tinyurl.com/oegcbsx.

CONCATENATE colocará seu texto nesse local.

CONCATENATE de A1 e http://tinyurl.com/api-create.php?url=geraria o URL correto que você está procurando. Os DADOS DE IMPORTAÇÃO pegarão o novo URL curto!

Aqui está a fórmula! Substitua B2 por onde quer que você esteja colocando seu URL longo

=IMPORTDATA(CONCATENATE("http://tinyurl.com/api-create.php?url=" & B2))
Jared
fonte
Essa deve ser a resposta selecionada. Muito mais simples que o Apps Apps, mas igualmente eficaz.
Gaurav Ramanan 07/04
1

Sobre o link Bitly http://dev.bitly.com/spreadsheets.html

Você precisa substituir a célula A1 pela URL que deseja usar.

Também é bastante útil que eles também ofereçam uma maneira de buscar a contagem de cliques.

Dave
fonte