6 La navigation dans le manuel de Kentika est réservée aux utilisateurs identifiés
Connecteur http : analyser le résultat d'une page avec URL de niveau 2
La réalisation d'un connecteur d'accès à une base externe de type HTTP se décompose en deux étapes : construire la requête puis l'analyser.
Il se peut alors que des informations complémentaires et structurées se trouvent sur des pages d'un niveau supplémentaire de profondeur. Il convient alors d'appeler les pages de niveau 2 et de leur appliquer le même type de traitement que pour la liste principale.
Dans l'exemple ci-dessous, la liste présentée comporte des informations succintes. Il faut cliquer sur les liens pour obtenir plus de détails.
Activation d'un lien de niveau 2 (ici : un lien contextuel, ie : dépendant de la recherche)
La page suivante permet d'obtenir des informations complémentaires.
Page détaillée d'une information
Lors de la mise au point du connecteur (découpage de la liste), vous devez avoir identifié un champ intitulé URL_Level2 comme dans l'exemple ci-dessous.
Identification de l'URL de niveau 2
Le principe est tout à fait comparable à l'analyse de la liste. La principale différence est que tout ce qui sera extrait de cette page ne concernera qu'un et un seul enregistrement.
Analyse de l'URL de niveau 2
Après avoir téléchargé la page correspondant à une URL de niveau 2 ( 1 ), il suffit de baliser le texte ( 2 ) comme décrit dans l'analyse de la page et demander à appliquer les règles ainsi définies ( 3 ). Les données extraites ( 4 ) viendront enrichir l'enregistrement lorsque le connecteur sera exécuté. Parfois, un script sur résultat peut être nécessaire pour extraire les données.
Il se peut que le contenu de la page à analyser dépasse la taille d'une variable texte (à savoir, 32000 caractères). Dans ce cas, il faudra travailler directement dans le blob dans lequel la page aura été chargé (Blob_http2). Dans l'exemple ci-dessous :
ACOI10:="<span class="
Ce1:=Chercher dans blob(ACOI10;->Blob_http2)-5
TComA2:=BLOB vers texte(Blob_http2;3;Ce1;30000)
on recherche la valeur "span class=" directement dans le blob à l'aide de la fonction "Chercher dans Blob" puis on lit le contenu du blob (les 30000 premiers caractères) que l'on charge dans une variable : TComA2.
Lors d'une requête, on peut vouloir récupérer systématiquement toutes les informations de tous les enregistrements afin d'afficher une information complète et détaillée, ou bien ne récupérer ces informations que si l'utilisateur sélectionne un enregistrement pour le visualiser.
Dans le premier cas (récupération systématique), une liste de 50 enregistrements récupérés par page de 10 items nécessitera 55 demandes au serveur (URL) et 55 analyses de page. Ceci peut être long et décourager les utilisateurs. Si un tel connecteur est utilisé dans le cadre d'un import programmé, le temps ne sera pas un critère déterminant.
Dans le deuxième cas (récupération à la demande), l'utilisateur verra rapidement la liste apparaître et le complément sera demandé dès qu'il cliquera sur une ligne du tableau de résultats dans l'explorateur de données.
Attention : la récupération des informations en niveau 2 à la demande (ie : pas en direct) ne peut, en général, s'appliquer que si l'URL correspond à une URL absolue et non à une URL relative à une recherche ou à un numéro de session.
Powered by KENTIKA Atomic - © Kentika 2025 tous droits réservés - Mentions légales