Copiar dados da tabela da Web utilizando o Azure Data Factory ou Synapse Analytics

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Dica

Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange desde movimentação de dados até ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma avaliação gratuita!

Este artigo descreve como usar a atividade de cópia nos pipelines do Azure Data Factory ou do Azure Synapse Analytics para copiar dados de uma tabela da Web. Ele amplia o artigo Visão geral da atividade de cópia que apresenta uma visão geral da atividade de cópia.

A diferença entre esse conector de tabela da Web, o conector REST e o conector HTTP é:

  • O conector da tabela da Web extrai o conteúdo da tabela de uma página da Web em HTML.
  • O conector REST especificamente dá suporte à cópia de dados de APIs RESTful.
  • O conector HTTP é genérico para recuperar dados de qualquer ponto de extremidade HTTP, por exemplo, para baixar o arquivo.

Funcionalidades com suporte

Há suporte para este conector de tabela Web nas seguintes funcionalidades:

Funcionalidades com suporte IR
Atividade de cópia (origem/-) 2
Atividade de pesquisa 2

① Runtime de integração do Azure ② Runtime de integração auto-hospedada

Para obter uma lista de armazenamentos de dados com suporte como origens e coletores, confira a tabela Armazenamentos de dados com suporte.

Especificamente, esse conector de tabela da Web dá suporte à extração de conteúdo de tabela de uma página HTML.

Pré-requisitos

Para usar este conector de tabela da Web, você precisa configurar um runtime de integração auto-hospedada. Consulte o artigo Self-hosted integration runtime (Integration Runtime auto-hospedado) para obter detalhes.

Introdução

Para executar a atividade de Cópia com um pipeline, será possível usar as ferramentas ou os SDKs abaixo:

Criar um serviço vinculado à Tabela da Web usando a interface do usuário

Use as etapas a seguir para criar um serviço vinculado à Tabela da Web na interface do usuário do portal do Microsoft Azure.

  1. Navegue até a guia Gerenciar em seu espaço de trabalho do Azure Data Factory ou do Synapse e selecione Serviços Vinculados, em seguida, clique em Novo:

  2. Pesquise por Web e selecione o conector Tabela da Web.

    Select the Web Table connector.

  3. Configure os detalhes do serviço, teste a conexão e crie o novo serviço vinculado.

    Configure a linked service to Web Table.

Detalhes da configuração do conector

As seções que a seguir fornecem detalhes sobre as propriedades usadas para definir entidades do Data Factory específicas à tabela da Web.

Propriedades do serviço vinculado

As propriedades a seguir têm suporte para o serviço vinculado de tabela da Web:

Propriedade Descrição Obrigatório
type A propriedade type deve ser definida como: Web Sim
url URL para a origem da Web Sim
authenticationType O valor permitido é: Anônimo. Sim
connectVia O Integration Runtime a ser usado para se conectar ao armazenamento de dados. É necessário um Integration Runtime auto-hospedado, conforme mencionado nos Pré-requisitos. Sim

Exemplo:

{
    "name": "WebLinkedService",
    "properties": {
        "type": "Web",
        "typeProperties": {
            "url" : "https://en.wikipedia.org/wiki/",
            "authenticationType": "Anonymous"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Propriedades do conjunto de dados

Para obter uma lista completa das seções e propriedades disponíveis para definir os conjuntos de dados, confira o artigo sobre conjuntos de dados. Esta seção fornece uma lista das propriedades com suporte pelo conjunto de dados da tabela da Web.

Para copiar dados da tabela web, defina a propriedade type do conjunto de dados como WebTable. Há suporte para as seguintes propriedades:

Propriedade Descrição Obrigatório
type A propriedade type do conjunto de dados deve ser definida como: WebTable Sim
caminho Uma URL relativa para o recurso que contém a tabela. Não. Quando o caminho não for especificado, apenas a URL especificada na definição do serviço vinculado será usada.
índice O índice da tabela no recurso. Confira a seção Obter índice de uma tabela em uma página HTML a fim de ver as etapas para obter o índice de uma tabela em uma página HTML. Sim

Exemplo:

{
    "name": "WebTableInput",
    "properties": {
        "type": "WebTable",
        "typeProperties": {
            "index": 1,
            "path": "AFI's_100_Years...100_Movies"
        },
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Web linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Propriedades da atividade de cópia

Para obter uma lista completa das seções e propriedades disponíveis para definir atividades, confia o artigo Pipelines. Esta seção fornece uma lista das propriedades com suporte pela origem da tabela da Web.

Tabela da Web como origem

Para copiar dados da tabela da Web, defina o tipo de origem na atividade de cópia como WebSource, não há suporte para nenhuma propriedade adicional.

Exemplo:

"activities":[
    {
        "name": "CopyFromWebTable",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Web table input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "WebSource"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Obter índice de uma tabela em uma página HTML

Para obter o índice de uma tabela que você precisa configurar em propriedades do conjunto de dados é possível usar, por exemplo, Excel 2016 como a ferramenta conforme a seguir:

  1. Inicie o Excel 2016 e alterne para a guia Dados.

  2. Clique em Nova Consulta na barra de ferramentas, aponte para De Outras Fontes e clique em Da Web.

    Power Query menu

  3. Na caixa de diálogo Da Web, insira a URL que você usaria no JSON de serviço vinculado (por exemplo: https://en.wikipedia.org/wiki/) juntamente com o caminho que você especificaria para o conjunto de dados (por exemplo: AFI 27s_100_Years de %... 100_Movies) e clique em OK.

    From Web dialog

    URL usada neste exemplo: https://en.wikipedia.org/wiki/AFI%27s_100_Years...100_Movies

  4. Se você vir a caixa de diálogo Acessar conteúdo da Web, selecione a autenticação de URL correta e clique em Conectar.

    Access Web content dialog box

  5. Clique em um item de tabela na exibição de árvore para ver o conteúdo da tabela e clique em Editar na parte inferior.

    Navigator dialog

  6. Na janela Editor de Consultas, clique no botão Editor Avançado na barra de ferramentas.

    Advanced Editor button

  7. Na caixa de diálogo Editor Avançado, o número ao lado de "Origem" é o índice.

    Advanced Editor - Index

Se você estiver usando o Excel 2013, use o Microsoft Power Query para Excel a fim de obter o índice. Confira o artigo Conectar-se a uma página da Web para obter detalhes. As etapas são semelhantes se você estiver usando o Microsoft Power BI para Desktop.

Pesquisar propriedades de atividade

Para saber detalhes sobre as propriedades, verifique Pesquisar atividade.

Para obter uma lista de armazenamentos de dados com suporte como coletores e fontes da atividade de cópia, confira os armazenamentos de dados com suporte.