Copier des données d’une table web à l’aide d’Azure Data Factory ou de Synapse Analytics

S’APPLIQUE À : Azure Data Factory Azure Synapse Analytics

Conseil

Essayez Data Factory dans Microsoft Fabric, une solution d’analyse tout-en-un pour les entreprises. Microsoft Fabric couvre tous les aspects, du déplacement des données à la science des données, en passant par l’analyse en temps réel, l’aide à la décision et la création de rapports. Découvrez comment démarrer un nouvel essai gratuitement !

Cet article explique comment utiliser l’activité de copie dans Azure Data Factory ou Synapse Analytics pour copier des données à partir d’une base de données de table web. Il s’appuie sur l’article Vue d’ensemble de l’activité de copie.

Les différences entre ce connecteur Table web, le connecteur REST et le connecteur HTTP sont les suivantes :

  • Le connecteur Table web extrait le contenu de tables d’une page web HTML.
  • Le connecteur REST prend spécifiquement en charge la copie de données à partir d’API RESTful.
  • Le connecteur HTTP est générique pour récupérer des données à partir de n’importe quel point de terminaison HTTP, par exemple pour télécharger un fichier.

Fonctionnalités prises en charge

Ce connecteur de table web est pris en charge pour les activités suivantes :

Fonctionnalités prises en charge IR
Activité de copie (source/-) 0
Activité de recherche 0

① Runtime d’intégration Azure ② Runtime d’intégration auto-hébergé

Pour obtenir la liste des magasins de données pris en charge en tant que sources et récepteurs, consultez la table Magasins de données pris en charge.

Plus précisément, ce connecteur Table web prend en charge l’extraction de contenu de table d’une page HTML.

Prérequis

Pour utiliser ce connecteur de table web, vous devez configurer un Runtime d’intégration autohébergé. Pour plus d’informations, consultez l’article Runtime d’intégration autohébergé.

Prise en main

Pour effectuer l’activité Copie avec un pipeline, vous pouvez vous servir de l’un des outils ou kits SDK suivants :

Créer un service lié à une table Web à l’aide de l’interface utilisateur

Utilisez les étapes suivantes pour créer un service lié à une Table Web dans l’interface utilisateur du portail Azure.

  1. Accédez à l’onglet Gérer dans votre espace de travail Azure Data Factory ou Synapse et sélectionnez Services liés, puis cliquez sur Nouveau :

  2. Recherchez Web et sélectionnez le connecteur de table Web.

    Select the Web Table connector.

  3. Configurez les informations du service, testez la connexion et créez le nouveau service lié.

    Configure a linked service to Web Table.

Informations de configuration des connecteurs

Les sections suivantes fournissent des informations sur les propriétés utilisées pour définir les entités Data Factory spécifiques du connecteur Table web.

Propriétés du service lié

Les propriétés prises en charge pour le service lié Table web sont les suivantes :

Propriété Description Obligatoire
type La propriété type doit être définie sur : Web Oui
url URL de la source web Oui
authenticationType Valeur autorisée : Anonymous. Oui
connectVia Runtime d’intégration à utiliser pour la connexion à la banque de données. Un Runtime d’intégration autohébergé est nécessaire comme indiqué dans Prérequis. Oui

Exemple :

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

Propriétés du jeu de données

Pour obtenir la liste complète des sections et propriétés disponibles pour la définition de jeux de données, consultez l’article sur les jeux de données. Cette section fournit la liste des propriétés prises en charge par le jeu de données de l’objet Table web.

Pour copier des données à partir de Table web, affectez la valeur WebTable à la propriété type du jeu de données. Les propriétés prises en charge sont les suivantes :

Propriété Description Obligatoire
type La propriété type du jeu de données doit être définie sur : WebTable Oui
path URL relative de la ressource qui contient la table. Non. Quand le chemin d’accès n’est pas spécifié, seule l’URL spécifiée dans la définition du service lié est utilisée.
index Index de la table dans la ressource. Pour savoir comment obtenir l’index d’une table dans une page HTML, consultez la section Obtenir l’index d’une table dans une page HTML . Oui

Exemple :

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

Propriétés de l’activité de copie

Pour obtenir la liste complète des sections et des propriétés disponibles pour la définition des activités, consultez l’article Pipelines. Cette section fournit la liste des propriétés prises en charge par la source de Table web.

Table web en tant que source

Pour copier des données de Table web, définissez le type de source dans l’activité de copie sur WebSource. Aucune autre propriété n’est prise en charge.

Exemple :

"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>"
            }
        }
    }
]

Obtenir l’index d’une table dans une page HTML

Pour obtenir l’index d’une table que vous devez configurer dans les propriétés du jeu de données, vous pouvez utiliser, par exemple, Excel 2016 comme suit :

  1. Lancez Excel 2016 et basculez vers l’onglet Données.

  2. Cliquez sur Nouvelle requête dans la barre d’outils, pointez sur À partir d’autres sources et cliquez sur À partir du web.

    Power Query menu

  3. Dans la boîte de dialogue À partir du web, entrez l’URL que vous utiliseriez dans le fichier JSON du service lié (par exemple, https://en.wikipedia.org/wiki/), ainsi que le chemin à spécifier pour le jeu de données (par exemple, AFI%27s_100_Years...100_Movies), puis cliquez sur OK.

    From Web dialog

    URL utilisée dans cet exemple : https://en.wikipedia.org/wiki/AFI%27s_100_Years...100_Movies

  4. Si la boîte de dialogue Accéder au contenu web apparaît, sélectionnez l’URL et l’authentification adéquates, puis cliquez sur Se connecter.

    Access Web content dialog box

  5. Cliquez sur un élément de table dans l’arborescence pour afficher le contenu de la table, puis sur le bouton Modifier du bas.

    Navigator dialog

  6. Dans la fenêtre Éditeur de requête, cliquez sur Éditeur avancé dans la barre d’outils.

    Advanced Editor button

  7. Dans la boîte de dialogue Éditeur avancé, le numéro en regard de « Source » est l’index.

    Advanced Editor - Index

Si vous utilisez Excel 2013, utilisez Microsoft Power Query pour Excel pour obtenir l’index. Pour plus d’informations, consultez l’article Se connecter à une page web . Les étapes sont identiques si vous utilisez Microsoft Power BI Desktop.

Propriétés de l’activité Lookup

Pour en savoir plus sur les propriétés, consultez Activité Lookup.

Pour obtenir une liste des magasins de données pris en charge comme sources et récepteurs par l’activité de copie, consultez la section sur les magasins de données pris en charge.