Função HOST

Esta função localiza o valor do host de um URL válido. Os valores de entrada precisam ser do tipo URL ou string, podendo ser literais ou referências de coluna.

Nesta implementação, um valor de host inclui tudo desde o final do identificador de protocolo (se houver) até o final da extensão (por exemplo, .com).

Uso básico

Exemplos de literais de URL:

derive type:single value: HOST('http://www.example.com' ) as: 'myHost'

Saída: é gerada uma coluna que contém o valor www.example.com.

Exemplo de referência de coluna:

derive type:single value: HOST(myURLs) as: 'myHost'

Saída: é gerada uma nova coluna myHost que contém os valores de host extraídos da coluna myURLs.

Sintaxe

derive type:single value: HOST(column_url)

ArgumentoObrigatório?Tipo de dadosDescrição
column_urlSstringNome da coluna, literal de string ou URL contendo o valor de host a extrair

Para mais informações sobre os padrões de sintaxe, consulte Notas de sintaxe da documentação da linguagem.

column_url

Nome da coluna, URL ou String literal com os valores que são usados para extrair o valor do host.

  • Valores de entrada ausentes geram resultados ausentes.
  • Colunas e caracteres curinga múltiplos não são aceitos.

Observações sobre o uso:

Obrigatório?Tipo de dadosValor de exemplo
SimLiteral de string ou referência de coluna (URL)http://www.example.com

Exemplos

Exemplo: funções domain, host, subdomain e suffix

Este exemplo ilustra como extrair partes de componentes de um URL usando as funções a seguir:

  • DOMAIN: extrai o valor do domínio de um URL. Consulte Função DOMAIN.
  • SUBDOMAIN: extrai o primeiro grupo após o identificador do protocolo e antes do valor do domínio. Consulte Função SUBDOMAIN.
  • HOST: retorna o valor completo do host de um URL. Consulte Função HOST.
  • SUFFIX: extrai o sufixo de um URL. Consulte Função SUFFIX.
  • URLPARAMS: extrai os valores e parâmetros de consulta de um URL. Consulte Função URLPARAMS.
  • FILTEROBJECT: filtra um valor de objeto para exibir apenas os elementos de uma chave específica. Consulte Função FILTEROBJECT.

Origem:

O conjunto de dados inclui os seguintes valores de URLs:

URL
www.example.com
example.com/support
http://www.example.com/products/
http://1.2.3.4
https://www.example.com/free-download
https://www.example.com/about-us/careers
www.app.example.com
www.some.app.example.com
some.app.example.com
some.example.com
example.com
http://www.example.com?q1=broken%20record
http://www.example.com?query=khakis&app=pants
http://www.example.com?q1=broken%20record&q2=broken%20tape&q3=broken%20wrist

Transformação:

Quando os dados acima são importados para o aplicativo, a coluna é reconhecida como um URL. Todos os valores são registrados como válidos, mesmo o endereço IPv4.

Para extrair os valores de domínio e subdomínio:

derive type:single value: DOMAIN(URL) as: 'domain_URL'

derive type:single value: SUBDOMAIN(URL) as:'subdomain_URL'

derive type:single value: HOST(URL) as:host_URL'

derive type:single value: SUFFIX(URL) as:'suffix_URL'

Use o padrão do Cloud Dataprep na transformação abaixo para extrair identificadores de protocolo, se houver, em uma nova coluna:

extract col:URL on:`{start}%*://`

Para limpar isso, renomeie a coluna para protocol_URL.

Para extrair os valores de caminho, use a seguinte expressão regular:

OBSERVAÇÃO: expressões regulares são consideradas um método no nível de desenvolvedor para a correspondência de padrões. Use-as com cautela. Consulte Correspondência de texto.

extract col: URL on: /[^*:\/\/]\/.*$/

A transformação acima captura um pouco demais do URL. Se você renomear a coluna para path_URL, será possível usar a seguinte expressão regular para limpá-la:

extract col:path_URL on:/[!^\/].*$/


Exclua a coluna path_URL e renomeie a coluna path_URL1 com o nome da que foi excluída. Em seguida:

derive type:single value: URLPARAMS(URL) as: 'urlParams'

Se quiser apenas visualizar os valores para o parâmetro q1, adicione o seguinte:

derive type:single value: FILTEROBJECT(urlParams,'q1') as: 'urlParam_q1'

Resultados:

Para fins de exibição, a tabela de resultados foi dividida em conjuntos separados de colunas.

Conjunto de colunas 1:

URLhost_URLpath_URL
www.example.comwww.example.com
example.com/supportexample.com/support
http://www.example.com/products/www.example.com/products/
http://1.2.3.41.2.3.4
https://www.example.com/free-downloadwww.example.com/free-download
https://www.example.com/about-us/careerswww.example.com/about-us/careers
www.app.example.comwww.app.example.com
www.some.app.example.comwww.some.app.example.com
some.app.example.comsome.app.example.com
some.example.comsome.example.com
example.comexample.com
http://www.example.com?q1=broken%20recordwww.example.com
http://www.example.com?query=khakis&app=pantswww.example.com
http://www.example.com?q1=broken%20record&q2=broken%20tape&q3=broken%20wristwww.example.com

Conjunto de colunas 2:

URLprotocol_URLsubdomain_URLdomain_URLsuffix_URL
www.example.com wwwexamplecom
example.com/support examplecom
http://www.example.com/products/http://wwwexamplecom
http://1.2.3.4http://
https://www.example.com/free-downloadhttps://wwwexamplecom
https://www.example.com/about-us/careershttps://wwwexamplecom
www.app.example.com www.appexamplecom
www.some.app.example.com www.some.appexamplecom
some.app.example.com some.appexamplecom
some.example.com someexamplecom
example.com examplecom
http://www.example.com?q1=broken%20recordhttp://wwwexamplecom
http://www.example.com?query=khakis&app=pantshttp://wwwexamplecom
http://www.example.com?q1=broken%20record&q2=broken%20tape&q3=broken%20wristhttp://wwwexamplecom

Conjunto de colunas 3:

URLurlParamsurlParam_q1
www.example.com
example.com/support
http://www.example.com/products/
http://1.2.3.4
https://www.example.com/free-download
https://www.example.com/about-us/careers
www.app.example.com
www.some.app.example.com
some.app.example.com
some.example.com
example.com
http://www.example.com?q1=broken%20record{"q1":"broken record"}{"q1":"broken record"}
http://www.example.com?query=khakis&app=pants{"query":"khakis","app":"pants"}
http://www.example.com?q1=broken%20record&q2=broken%20tape&q3=broken%20wrist{"q1":"broken record", "q2":"broken tape",
"q3":"broken wrist"}
{"q1":"broken record"}

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Google Cloud Dataprep
Precisa de ajuda? Acesse nossa página de suporte.