Collecter les publications d'un site web en créant une source de type "scraping bot"

Rôles utilisateur: Administrator, Explorer Durée: 30 min Objectif: Apprendre comment créer correctement un robot de collecte de type "bot builder"

Cas d'emploi

Le "scraping bot" est un robot de collecte ciblée dédié aux pages et sites web.

Il permet de suivre les nouvelles informations disponibles sur un URL fixe et, en option sur des URLs situés à un niveau de profondeur de l'URL fixe.

Beaucoup de sites web créés à l'aide d'un CMS présentent sur un URL fixe des aperçus d'articles, proposant par contre l'intégralité de ces articles sur des URLs dynamiques.

Les URLs dynamiques étant généralement accessibles en cliquant sur un lien de type "Lire la suite".

Par URL dynamique on entend un URL différent pour chacun des articles, reprenant par exemple la date ou le titre de la publication, et que l'on ne peut dès lors deviner à l'avance.

 

Fonctionnement général du "scraping bot" Cikisi 

  • Sur l'URL fixe, correspondant au premier niveau (1st level), le robot collectera les informations relatives à différents articles
    • Au minimum le titre de l'article et le lien vers l'article en intégralité, souvent la description et la date de publication, parfois l'image de l'article
    • L'URL fixe est celui devant être ajouté en premier lieu dans le formulaire de création du robot
  • Sur les URLs dits dynamiques, correspondant aux seconds niveaux (2nd level), le robot collectera des informations venant compléter celles déjà associées aux différents articles
    • Souvent le contenu intégral de l'article

 

Les 4 types de "scraping bot"

  • Type 1 - "Lire plus" interne
    • Les informations relatives aux articles sont présentes sur 2 niveaux (URL statique + URLs dynamiques)
    • Le 2 niveaux appartiennent au même nom de domaine
  • Type 2 - "Lire plus" externe (agrégateur de contenu)
    • Les informations relatives aux articles sont présentes sur 2 niveaux (URL statique + URLs dynamiques)
    • Les 2 niveaux n'appartiennent pas au même nom de domaine
    • Les différents 2ème niveaux peuvent être issus de noms de domaine différents
  • Type 3 - Page unique avec plusieurs articles
    • Les informations relatives aux différents articles sont présentes sur un seul et même niveau (il n'y a pas de "lire plus")
    • Chaque article est distinctement séparé des autres (visuellement et dans le code source)
  • Type 4 - Page unique avec une seule zone
    • Il s'agit de la mise en surveillance d'une zone donnée d'une page web
    • Un changement de texte (pas d'image, etc.) au sein de cette zone déclenche la création d'un nouvel article dans Cikisi

Le type 1 est de loin le cas le plus fréquent.

 

Configuration du robot

Il est nécessaire de spécifier à Cikisi quelles parties des pages web à associer à quels champs (titre, image, description, etc.).

Il s'agit donc de définir des sélecteurs qui ne sont rien d'autres que des balises HTML.
A noter que les pages web utilisant du Javascript (ce qui devient rare) ne peuvent dès lors être collectées à l'aide de ce type de robot

Etape 1 - Choix d'une méthodes pour définir des sélecteurs

La configuration du robot peut se faire de deux façons :

  • Via l'interface représentant visuellement le site web en cliquant sur "Edit Selectors"
    • Ce mode de configuration est idéal pour les personnes n'ayant pas de connaissance du langage HTML
    • Le site web a mettre en surveillance est représenté au sein de Cikisi (sorte d'iframe)
    • Il permet de sélectionner rapidement les zones de la page web utiles à l'aide de la souris
      • Ces zones apparaissent en jaune lors de la sélection et en bleu une fois la sélection réalisée
      • Lors de la sélection, la touche "u" vous permet de sélectionner la zone supérieure (imbrications)
    • Une fois défini, un sélecteur peut être également amélioré/corrigé à l'aide du clavier au sein d'un champs de saisie apparaissant en bleu en bas de l'écran
  • Via le formulaire de saisie en cliquant sur "Edit Selectors manually"
    • Ce mode de configuration est idéal pour les personnes possédant une bonne connaissance du langage HTML
    • Il est la seule option possible si le site web refuse d'être représenté au sein de Cikisi (vous faites dans ce cas face à une page blanche)

 

Etape 2 - Définition du sélecteur "Wrapper"

Le "wrapper" est le sélecteur le plus important, sans lui la configuration ne peut être réalisée.

Comme "wrapper" vous devez définir la zone de la page web qui contient UN ET UN SEUL article.
Autrement dit, au sein du "wrapper" vous ne pouvez jamais retrouver deux articles différents.
De même, tous les champs du 1er niveau d'un même article (titre, decription, etc.) doivent se retrouver au sein de ce "wrapper".

 

Etape 3 - Choix des sélecteurs au 1er ou au 2ème niveau

Que ce soit au sein de l'interface représentant le site web ou au sein du formulaire, vous pouvez déplacer les sélecteurs du premier au second niveau (et vice versa) à l'aide d'un "glisser-déposer ". Ainsi si la date n'est pas présente au 1er niveau, alors faites glisser ce sélecteur vers le 2ème niveau.

Nous vous recommandons de toujours prendre les informations au 1er niveau si celles-ci y sont disponibles.

 

Etape 4 - Options avancées

 

Fermeture des fenêtres "pop-up"

Utiliser "close pop-up modal" si votre robot ne peut accéder à un niveau car une fenêtre modale apparaît au dessus du contenu (exemple : fenêtre de type "Abonnez-vous" ou "Accepter les cookies").

 

Anti "bot detection"

Utiliser l'option "Use US proxy" du formulaire de création si votre robot de collecte est bloqué par le site. Dans 80 % des cas, l'utilisation du proxy résidentiel de Cikisi permet de déjouer le système de détection des robots mis en place par le site.

Tutoriel(s) vidéo lié(s)

Module Robot de Collecte de type "Scraping Bot"