Scraping bloqué

Bonjour,
Récemment j’ai essayé de scraper le site web de Aramisauto.fr et promoneuve.fr avec WebScraping.
Cependant, lorsque je télécharge le fichier excel avec le scraping réalisé, il manque plein de données et elles sont toutes dans le désordre.
Je voulais scraper le nom du garage, la géolocalisation et la marque.

Je voulais savoir si c’était moi qui utilisait mal WebScraping ou certains site bloque le scraping ?

Sinon vous avez un autre outil à me conseiller pour scraper ces sites ?

Merci d’avance

Hello, en tous cas cela passe sans problème sur Zennoposter.

Ahh okey, bah je vais tester Zennoposter, Merci !

Hello,

En fait tu n’as aucun blocage de scraping, et aucun soucis d’utilisation de WebScraper.

C’est juste que tu n’as pas réussi à ouvrir le fichier CSV généré. Ce n’est pas un fichier Excel que tu obtiens, mais un fichier CSV, et Excel n’est pas très doué pour l’ouvrir avec la bonne configuration…

En gros, tes données sont correctes, c’est juste Excel qui ouvre mal le fichier, et du coup tu as l’impression qu’elles sont dans le désordre.

Mais quand je vérifie directement sur WebScraper, il manque aussi des données

Certaines données sont présentes, si il en manque c’est que tu as possiblement mal écrit tes sélecteurs.

En tout cas, c’est du binaire, soit ça marche, soit ça marche pas, mais WebScraper n’est apparemment pas en cause :slight_smile: Peux tu essayer de réécrire tes sélecteurs CSS pour mieux cibler les éléments à extraire?

Les sélecteurs CSS ?

Pour mon scraping, j’ai sélectionné avec l’interface de WebScraping et j’ai pris ces sélections :
-Pour le nom du garage j’ai pris ça -> strong.text-upper
-Pour la marque -> span.text-regular
-Pour la géolocalisation -> span.text-black

Si tu t’en es pas sorti dis moi !
En faisant le test j’ai laissé tourné du coup j’ai la data :slight_smile:

Hello @Alvesinho,

Les sélecteurs CSS que tu as choisi pour l’extraction des données sont justes.

En revanche, ce qui pose problème c’est le sélecteur « parent », celui qui défini l’élément qui englobe chacun des trois champs que tu souhaites extraire. Si celui-ci est incorrect, on se retrouve avec des trous dans les champs extraits.

Voici les sélecteurs que j’ai utilisé, et ensuite l’export de ma config (le sitemap JSON):

Résultat des données extraites, sans « trous »:

La config JSON que j’ai exporté, si tu veux la réimporter dans ton WebScraper:

{"_id":"promoneuve-concessions","startUrl":["https://www.promoneuve.fr/concessions/annuaire"],"selectors":[{"id":"next-page","type":"SelectorLink","parentSelectors":["_root","next-page"],"selector":"div.pagination li.active+li>a","multiple":false,"delay":0},{"id":"company","type":"SelectorElement","parentSelectors":["_root","next-page"],"selector":"div.showroomList","multiple":true,"delay":0},{"id":"company-name","type":"SelectorText","parentSelectors":["company"],"selector":"a>strong.text-upper","multiple":false,"regex":"","delay":0},{"id":"SIRET","type":"SelectorText","parentSelectors":["company"],"selector":"a>span.hidden","multiple":false,"regex":"","delay":0},{"id":"car-make","type":"SelectorText","parentSelectors":["company"],"selector":"a>span.text-regular","multiple":false,"regex":"","delay":0},{"id":"phone","type":"SelectorElementAttribute","parentSelectors":["company"],"selector":"a[data-target='#phone-numberModal']","multiple":false,"extractAttribute":"data-contact-1","delay":0},{"id":"contact","type":"SelectorElementAttribute","parentSelectors":["company"],"selector":"a[data-target='#phone-numberModal']","multiple":false,"extractAttribute":"data-contact-1","delay":0},{"id":"address","type":"SelectorElementAttribute","parentSelectors":["company"],"selector":"a[data-map]","multiple":false,"extractAttribute":"data-map","delay":0},{"id":"postalcode","type":"SelectorText","parentSelectors":["company"],"selector":"span.text-black","multiple":false,"regex":"[0-9]{5}","delay":0},{"id":"city","type":"SelectorText","parentSelectors":["company"],"selector":"span.text-black","multiple":false,"regex":"[^\\s\\d].+","delay":0}]}

Merci beaucoup pour votre aide, je vais regarder ça !
Je vais essayer de le réimporter depuis WebScraper.

En tout cas, merci !

Salut,
Je suis désolé de t’embêter à nouveau pour du scraping.
Mais j’ai encore un petit problème de scraping.

J’ai essayé d’utiliser ta technique pour Scraper un autre site plus complet.
Cependant, mon scrap saute des pages dans la pagination…

J’ai essayé de scraper ce site:
https://www.auto-concession.fr/


Hello, c’est quoi ton sélecteur qui correspond au bouton page suivante?

Alors j’ai fais plusieurs test et j’ai utilisé les deux suivant, mais ça saute toujours des pages …
.pagination a
.pagination li:nth-of-type(4) a

Merci

Alors en fait aucun de ces deux sélecteurs ne cible réellement le seul bouton qui t’intéresse ici, à savoir le bouton « page suivante ».

Le bouton page suivante peut être défini par ce sélecteur:
.pagination a[rel=next]

En utilisant celui-là, ça tourne bien :slight_smile:

Hello ! C’est sûrement pcq t’as coché « multiple » à chaque fois :wink:

Salut, et merci de vos réponses !
Effectivement j’ai mis plusieurs fois multiple …