Scraper des liens JSON

Ce tutoriel va vous présenter comment récupérer les liens de JSON et les avantages de cette façon de scraping.

Mis à jour il y a plus d’une semaine

Qu'est-ce que JSON ?

JSON (JavaScript Object Notation) est un format léger d'échange de données en mode texte. Il est non seulement facile à lire et à écrire pour les humains, mais aussi facile à analyser et à générer pour les machines. C'est pourquoi il est largement utilisé par les sites Web pour améliorer l'efficacité de la transmission sur le réseau.

Pourquoi extraire des liens JSON ?

L'extraction des liens JSON permet une conversion plus rapide et plus sûre des données du format JSON vers un format structuré. Elle peut nous aider à

  1. Accélérer l'extraction des données sans avoir à charger des images ou autres

  2. Contourner les restrictions anti-scraping de nombreux sites web

  3. Gérer plus facilement le nombre de boutons et le défilement infini

Comment utiliser l'extraction JSON avec Octoparse ?

Pour démonstration, nous allons extraire des données d'une page de la liste sur Booking.com en utilisant l'extraction JSON.

Vous trouverez ci-dessous les trois principales étapes de cette démo.

1. Inspecter la page web dans un navigateur - pour identifier l'URL contenant le fichier JSON, nous devons

  • Ouvrez l'URL de l'échantillon dans Chrome

  • Cliquez avec le bouton droit de la souris sur la page Web et sélectionnez Inspecter pour ouvrir les DevTools

  • Sélectionnez Fetch/XHR dans l'onglet Network des DevTools

  • Cliquez sur l'icône d'effacement (

    ) pour effacer toutes les informations chargées

  • Faites défiler la liste des tâches dans la colonne déroulante pour rafraîchir la page

  • Vérifiez les URL rechargées en XHR pour voir si elles contiennent un fichier JSON

  • Cliquez sur le nom d'une URL et vérifiez ses informations d'en-tête. Nous verrons que le content-type sous Request Headers contient json

  • Passez à l'onglet Aperçu et voyez le nombre de données dont nous parlons. Nous pouvons voir que le nombre total est de 363 pour cette démo

  • Descendez un peu plus bas et comparez les URLs des requêtes pour trouver un modèle

En comparant les URLs des requêtes, nous constatons que le paramètre start= dans l'URL augmente de 10 à chaque fois.

2. Générer par lot une liste d'URL JSON dans Octoparse - pour extraire d'une liste de liens de fichiers JSON

Ensuite, nous devons générer par lots la liste d'URL JSON dans Octoparse.

  • Ouvrez Octoparse et démarrez une nouvelle tâche avancée qui génère par lots les URLs d'entrée

  • Collez l'URL copiée dans la boîte de format d'URL

  • Sélectionnez l'élément changeant dans l'URL et cliquez sur Ajouter un paramètre

  • Réglez la valeur initiale sur 0, chaque fois sur +10, et la valeur finale sur 363, puis cliquez sur Confirmer pour enregistrer

Remarque : La valeur finale change constamment. Saisissez la valeur réelle que vous trouvez dans Chrome.

  • Cliquez sur l'action Aller à la page Web et cochez la case JSON dans l'onglet Général

  • Cliquez sur Appliquer pour enregistrer vos paramètres

3. Sélectionner les données à extraire - pour obtenir les données dont nous avons besoin

  • Basculez l'arbre de structure et sélectionnez les éléments de page que nous voulons dans le noeud positions

  • Extraire les champs de données comme le nom, l'identifiant de l'emploi, l'unité commerciale et le lieu

  • Enregistrez la tâche et exécutez-la pour obtenir les données dont nous avons besoin

Voici l'exemple de sortie de données.

Avez-vous trouvé la réponse à votre question ?