Scraping avec click - Web Scraper

Hello la communauté,

J’ai déjà utilisé à plusieurs occasions Web Scraper pour scraper des données et je souhaite aller plus loin dans son utilisation.

En effet, je souhaite récupérer un numéro de téléphone après avoir cliqué sur un lien pour le faire afficher sur ce site : https://www.seloger.com/annuaire/75/?idtypeprofessionnel=0,1,2,5,7&idtt=2,8,1,7,5,6#cp=75&idtypeprofessionnel=0,1,2,5,7&idtt=2,8,1,7,5,6
J’ai donc fais l’étape en 2 temps avec :

  • Element click pour cliquer sur le lien avec 500 ms de battement avec : button.agency_phone
  • Text pour récupérer le numéro de téléphone qui vient de s’afficher avec : button[data-phone^=« 0 »]

Résultat :

  • Web Scraper clique bien sur les éléments
  • Par contre la case, numéro de téléphone reste vide après scap

Autre méthode : J’avais pensé à utiliser element attribute puisque le numéro de téléphone est dans l’attribut nommé data-phone avec : button[data-phone^=« 0 »] mais cela ne fonctionne pas…

Avez-vous des idées pour contourner ce blockage ?
Merci d’avance !!

Je t’envoie un script par message direct pour pouvoir scraper facilement tout cela. Effectivement il n’y a pas besoin de cliquer puisque les URL sont dans la source.

@soliny: ton sélecteur button[data-phone^="0"] ne doit pas être correct, du moins il me semble assez compliqué/restrictif. On peut l’écrire plus simplement :slight_smile:

Si tu définis ton « Selector » avec le type « Element attribute », que tu mets comme sélecteur css :

button.agency_phone

Et que dans la case « Attribute name » tu mets « data-phone », ça fonctionne tout bien:

Voici le JSON du sitemap pour ceci:

{"_id":"seloger","startUrl":["https://www.seloger.com/annuaire/75/?idtypeprofessionnel=0,1,2,5,7&idtt=2,8,1,7,5,6#cp=75&idtypeprofessionnel=0,1,2,5,7&idtt=2,8,1,7,5,6"],"selectors":[{"id":"companies","type":"SelectorElement","parentSelectors":["_root"],"selector":"article.agency","multiple":true,"delay":0},{"id":"company_name","type":"SelectorElementAttribute","parentSelectors":["companies"],"selector":"h2.agency_name>a","multiple":false,"extractAttribute":"title","delay":0},{"id":"website","type":"SelectorElementAttribute","parentSelectors":["companies"],"selector":"a.agency_website","multiple":false,"extractAttribute":"href","delay":0},{"id":"phone","type":"SelectorElementAttribute","parentSelectors":["companies"],"selector":"button.agency_phone","multiple":false,"extractAttribute":"data-phone","delay":0}]}

Super merci bien !

1 « J'aime »

De rien. N’hesite pas à me demander la prochaine fois :wink:

Bonjour à tous, j’ai le même souci.
J’aurais besoin de scraper les numéros de téléphone sur les pagesjaunes et le numéro s’affiche après un click sur un bouton.
Le click semble bien se faire mais Web scraper ne scrape aucune donnée pour le numéro de téléphone.

Est-ce que quelqu’un aurait une solution pour me débloquer ?

Voici le code source d’une des pages :

Afficher le numéro
Numéro de Téléphone 01 44 50 73 00 01 44 50 73 00