Toutes les collections
Tutoriel sur les cas
Voyage
Scraper les données d'hôtels d'Airbnb
Scraper les données d'hôtels d'Airbnb

Récupérer les informations sur hôtels d'Airbnb: le prix, l'image, le classement etc.

Mis à jour il y a plus d’une semaine

Airbnb est un bon site Web pour vous aider à trouver un hôtel idéal. Dans ce tutoriel, nous vous montrerons comment utiliser Octoparse pour obtenir des informations d'hôtels d'Airbnb.

La façon la plus facile est d'utiliser des modèles de tâches prédéfinis d'Airbnb. Ce faisant, vous n'avez plus besoin de configurer vos tâches, mais entrez simplement des mots-clés / URL et attendez les données extraites. Pour plus de détails, vous pouvez consulter ici: https://dataservice.octoparse.com/fr/web-scraping-template

modèle

Voici les étapes principales de ce tutoriel:

1) Aller à la page Web - ouvrir la page Web cible

  • Entrez l'URL sur la page d'accueil et cliquez sur "Démarrer"

entrer url

2) Auto-détecter la page Web - créer un flux de travail

  • Sélectionnez les deux premiers blocs pour détecter tous les blocs

  • Cliquez sur "Loop click each URL" pour accéder à la page de détail

Un élément de boucle sera créé et Octoparse ouvrira automatiquement la première page de l'hôtel

loop item

3) Extraire des données de la page de détail

  • Sélectionnez les informations que vous voulez et cliquez sur Extraire le texte de l'élément

gif
  • Sélectionnez Add customer field -> Données de niveau page -> URL de la page si vous souhaitez extraire l'URL de la page actuelle.

gif
  • Double-cliquez sur le champ de données pour en modifier le nom

renomer le nom

4)Modifier xpath pour champ de donné

La structure des pages d'Airbnb est délicate et les XPaths générés automatiquement ne conviennent généralement pas à toutes les pages. Ne vous inquiétez pas ! Nous avons préparé tout ce dont vous avez besoin. Vous pouvez simplement utiliser l'élément XPath fourni ci-dessous.

  • Passez en vue verticale - La vue verticale permet de modifier facilement plusieurs champs de données

  • Double-cliquez sur le XPath pour le modifier

  • Entrez le nouveau XPath dans le champ

modifier xpath

Voici les Xpaths pour différents champs des pages Airbnb :

  • Titre de l'hôtel : //h1

  • Nombre d'avis : //bouton[contient(@aria-label, 'Rate')]

  • Note de l'avis : //button[contains(@aria-label, 'Rate')]/../précédent::span[1]

  • Nombre d'invités : //span[contains(text(), 'guest')]

  • Nombre de chambres à coucher : //span[contains(text(),'bedroom')]

  • Nombre de bain : //span[contains(text(),'bathroom')]

  • Nombre de lits : //span[contains(text(), 'bed')] [not(contains(text(), 'room'))]

  • Prix : //div[contains(@style, 'pricing')]/div[1]//span

5) Créer une pagination

  • Cliquez sur "Go to Web Page" pour ouvrir à nouveau la page d'inscription

  • Sélectionnez le bouton de la page suivante (">") au bas de la page principale

  • Choisissez Loop click single element dans les Tips

Une pagination sera créée dans le flux de travail.

  • Faites glisser le flux de travail vers la bonne position

6) Modifier XPath de pagination et loop item

L'action auto-générée "Cliquer les URL dans la liste" ne marche pas bien dans ce cas, nous devons donc modifier le XPath pour qu'elle puis fonctionner.

  • Cliquez sur Pagination

  • Entrez xpath: //*[@aria-label='Next']

gif

  • Cliquez sur Loop Item

  • Changez le mode de boucle en liste de variables

  • Entrez XPath : //a[contains(@aria-labelledby, 'title')]

  • Cliquez sur Appliquer pour enregistrer

xpath de loop item

La page suivante est chargée avec AJAX, nous devons donc ajouter un temps d'attente AJAX à l'action "Click to Paginate".

  • Cliquez sur Click to Paginate

  • Allez dans les Options

  • Cochez Charger avec AJAX

  • Définissez le temps d'attente d'AJAX à 5-10s

GIF

7) Démarrer l'extraction - exécuter la tâche et obtenir des données

  • Cliquez sur "Enregistrer"

  • Sélectionnez "Exécuter sur votre appareil" pour exécuter la tâche sur votre appareil, ou sélectionnez "Exécuter la tâche sur le cloud"pour exécuter la tâche sur le Cloud (uniquement pour les utilisateurs premium)

lancer  l'execution

Voici l'exemple de l'exportation:

donné

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