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: