undefined

Scraper les données d'hôtels d'Airbnb

Monday, May 17, 2021 9:51 AM

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

 

 

Continuez à lire ce tutoriel si vous voulez créer la tâche à partir de zéro. Voici le l'URL de la salle Airbnb que nous utiliserons comme exemple.
https://www.airbnb.com/s/New-York--NY--United-States/homes?adults=2&search_type=pagination&s_tag=A2EV74MC&tab_id=home_tab&refinement_paths%5B%5D=%2Fhomes&children=1&place_id=ChIJOwg_06VPwokRYv534QaPC8g&federated_search_session_id=2e7da092-4a51-48db-ba26-9746f41ac068

 

Voici les étapes principales de ce tutoriel [Télécharger le fichier de tâche ici]

  1. Aller à la page Web - ouvrir la page Web cible
  2. Auto-détecter la page Web - créer un flux de travail 
  3. Extraire des données de la page de détail
  4. Modifier xpath pour champ de donné 
  5. Créer une pagination
  6. Modifier XPath de pagination et loop item
  7. Démarrer l'extraction - exécuter la tâche et obtenir des données
 

 

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 
 

 gif

 

 

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é

 

 

Vous avez encore des questions ou avez besoin d'échanger ? N'hésitez pas à me contacter par mail pour que je puisse vous aider. Nos équipes sont à votre écoute pour faire en sorte que notre produit soit celui dont vous avez besoin pour votre métier.

 

 

 

Autres tutoriels:

Scraper les informations d'entreprises sur Google Maps

Scraper les informations de produits d'eBay

Scraper des informations sur les offres d'emploi de Indeed

 

 

Nous utilisons des cookies pour améliorer votre expérience de navigation. Découvrez comment nous utilisons les cookies et comment vous pouvez les contrôler en cliquant sur les paramètres des cookies. Si vous continuez à utiliser ce site, vous consentez à notre utilisation des cookies.
Accepter Rejeter