Dans ce tutoriel, nous allons vous montrer comment scraper les données d'attributs de Realtor.com.

Avec Octoparse, Nous allons scraper les données de la page de détail de la maison et scraper le titre, l'emplacement, le prix et la note, etc. Pour poursuivre, vous pouvez utiliser l'URL du tutoriel:

https://www.realtor.com/realestateandhomes-search/Tallassee_AL

Nous allons utiliser 2 tâches pour obtenir des données dans les pages de détails.

Voici les principales étapes de ce tutoriel:

Tâche 1: Extraire toutes les URL des pages de détails sur les pages de résultats de recherche [Téléchargez la démonstration de tâche ici ]

  1. Allez à la page Web - ouvrez la page Web cible
  2. Créez une boucle de pagination - scrapez tous les résultats de plusieurs pages
  3. Créez un "élément boucle" - pour extraire les URL de toutes les listes en boucle
  4. Affinez le champ de données de l'URL
  5. Démarrez l'extraction - exécutez la tâche et obtenez des données

Tâche 2: Collectez les informations de produit à partir des URL récupérées [Télécharger la démonstration du fichier de tâche ici ]

  1. Entrez un lot d'URL récupérées - ouvrez en boucle les pages de détails
  2. Extraire les données - sélectionnez les données pour l'extraction
  3. Affiner les champs de données
  4. Démarrez l'extraction - exécutez la tâche et obtenez des données
 

 

 

Tâche 1: Extraire les URL des pages de détail sur les pages de résultats de recherche

 

 

1. "Aller à la page Web" - ouvre la page Web cible

  • Entrez l'exemple d'URL et cliquez sur "Démarrer"

mceclip0.png

 

2.  Créer une pagination - scrapez tous les résultats de plusieurs pages

  • Faites défiler vers le bas et cliquez sur le bouton ">" de la page Web
  • Cliquez sur "URL unique de clic boucle" dans le panneau Tip.

1.png

Octoparse détecte automatiquement AJAX qui applique pour l'action de clic en 3 secondes. Vous pouvez le modifier en fonction de votre condition Internet locale (Cliquez pour en savoir plus sur AJAX: Handling AJAX).

  • Configurez le délai d'attente AJAX de "5" s

mceclip2.png

  • Double-cliquez sur l'étape "Pagination" dans le workflow
    • Copiez et collez le XPath révisé pour le bouton de la page suivante:
    • //a[@aria-label="Go to next page"][not(contains(@class, "disabled"))]

2.png

  • Développez la section "Avant que l'action ne soit effectuée"
  • Vérifiez "Attendre avant l'action" et définissez le temps d'attente de 2 s
  • Cliquez sur "OK" pour enregistrer
                                                                            
    mceclip6.png
 

 

3.  Créer un "élément boucle" - pour extraire  les URL de toutes les listes en boucle

  • Cliquez sur l'adresse du 1er élément de la liste
  • Cliquez sur la balise A en bas du panneau Tips (une balise définit un hyperlink, qui est utilisé pour créer un lien d'une page à une autre)
  • Cliquez sur "Sélectionner Tout" dans le panneau Astuces
  • Sélectionnez "Extraire l'URL du lien"

3.gif

Comme vous le voyez, certains éléments ne sont pas sélectionnés, nous devons donc modifier L'élément de Boucle.

  • Cliquez sur mceclip0.png de "Loop Item"
                                                                                mceclip3.png
  • Changez le Mode de Boucle de "Liste fixe" à "Liste de variables"
  • Entrez XPath //ul[@data-testid='property-list-container']/li into the text boxmceclip4.png
  • Cliquez sur "OK" pour enregistrer
 

 

4. Affiner le champ de données de l'URL

Parfois, L'URL scrapée ouvre une page avec une conception de page différente. Pour éviter cela, nous devons affiner le champ URL.

  • Double-cliquez sur "Extraire les données" dans le workflow
  • Choisissez le champ de l'URL du titre et cliquez sur "..." pour choisir "Nettoyer les données"
     mceclip2.png
  • Cliquez sur "Ajouter une étape", puis choisissez "Ajouter un suffixe"
  • mceclip3.png
  • Entrez "? View = qv" dans la zone de texte, puis appuyez sur "Evaluer" pour obtenir le résultat.
  • Cliquez sur "Confirmer" pour l'enregistrer.mceclip4.png
  • Si nécessaire, Cliquez sur le nom du champ pour le modifier

5.png

 

 

 

5. Démarrer l'extraction - exécuter la tâche et obtenez des données

mceclip5.png

Si vous êtes un utilisateur premium ou un utilisateur d'essai, je vous suggérerai d'utiliser "Exécuter la tâche dans le Cloud" pour utiliser la fonctionnalité des tâches associatives (Consultez ce guide Que sont la tâche de parent et la tâche d'enfant dans Octoparse? Pour plus de détails) .

Voici les données de production.

mceclip4.png

 

 

 

 

Tâche 2: collecter les données d'attributs à partir des URL de propriété récupérées

 

1. Entrez un lot d'URL récupérées - ouvrez les pages de détails en boucle

Dans la tâche 1, nous avons déjà obtenir une liste d'URL.

  • Cliquez sur"+ Nouveau" pour démarrer une tâche en utilisant le Mode Avancé pour créer la tâche 2                                                                                                                                                                                                                                                                                                                                                                 mceclip0.png
  • Choisissez "Importer depuis la tâche" pour obtenir les URL de la tâche 1

    mceclip8.png

Tips!

Il y a 4 manière de saisir des URL. Dans ce tutoriel, nous utilisons "Importer depuis la tâche" pour la démonstration. Veuillez noter que celui-ci ne fonctionne que lorsque la tâche parent s'exécute dans le Cloud. Si nous importons à partir d'un résultat de données d'exécution local, seules 100 lignes de données seront importées. Pour en savoir plus sur l'importation d'URL, consultez ce guide: Entrée d'URL par lots.

 

Après avoir cliqué sur le bouton "Enregistrer", vous verrez un élément de boucle nommé "URL de boucle" être généré dans le workflow.

 

 

2. Extraire les données - sélectionnez les données à extraire

  • Cliquez sur les éléments que vous souhaitez scraper
  • Choisissez "Extraire le texte / URL / URL de l'image de l'élément sélectionné" dans le panneau Tips

extract_data.gif

  • Cliquez sur mceclip2.png   pour renommer les champs

mceclip9.png

 

 

3. Affiner les champs de données

Pour éviter d’extraire des données dans la mauvaise colonne, nous devrons Personnaliser l'élément XPath.

  • Double-cliquez sur l'étape "Extraire les données" dans le workflow pour réviser le XPath de certains champs de données
  • Cliquez sur l'icônemceclip3.png pour modifier le XPath
  • Entrez le XPath révisé dans la zone de texte et cliquez sur "OK" pour enregistrer

3.png

Voici les XPaths révisés pour certains champs de données courants

  • Presented_by: //div[contains(text(),'Presented')]/following-sibling::span[2]
  • Brokered_by: //li[contains(text(),'Brokered')]/following-sibling::li[1]
  • Price: //span[contains(@class,'price')]
  • Facilities: //ul[contains(@class,'property')]
  • Address: //h1[contains(@class,'address')]
  • Property_type: //span[contains(text(),'Property')]/following-sibling::span[1]
  • Last_sold: //span[contains(text(),'Last Sold')]/following-sibling::span[1]
  • Days_on_realtor: //span[contains(text(),'Days on')]/following-sibling::span[1]
  • Parcel_number: //li[contains(text(),'Parcel')]
  • Source Listing Status: //li[contains(text(),'Source Listing Status')]

Si vous avez besoin de données,par exemple la latitude et la longitude, vous devez extraire l'URL de l'image des cartes, puis nettoyer les données pour extraire des informations de coordonnées.

  • Cliquez sur l'image de la carte pour extraire l'URL de l'image sélectionnée
  • Répétez l'étape ci-dessus
  • Allez à "Extraire les données" et trouvez l'option de "Nettoyer les données"
  • Cliquez sur "Ajouter une étape" et choisissez "Correspondance avec une expression régulière"
  • Utilisez "center =" comme valeur de départ et "% 2C" comme valeur de fin pour faire correspondre la latitude
  • Utilisez «% 2C» comme valeur de départ et «& channel» comme valeur de fin pour faire correspondre la longitude

coordinates.gif

 

 

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

  • D'abords, Cliquez sur "Enregistrer" pour enregistrer la tâche
  • Ensuite, cliquez sur "Exécuter" en haut à gauche
  • 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)

mceclip12.png

 

Voici l'exemple de production

mceclip13.png