Besoin de conseil : scraping

Bonjour à tous,

Nouveau sur le site, je tiens d’abord à vous remercier pour les conseils donnés, c’est vraiment top !

Voici ma problématique :

Je possède un fichier excel (base de données clients) très incomplet, comportant notamment les infos suivantes : « nom de la société » / « numéro département ».

Je souhaiterais automatiser plusieurs choses, notamment :

  • recherche du numéro de SIRET, via un process du type : ramener automatiquement la première page issue d’une recherche google avec « nom de la société » + « numéro département » + VERIF (l’idée est d’accéder à l’URL de la page verif.com concernée, qui s’affichera généralement en première position, puis de scraper le SIRET sur la page par la suite, ou même plus simplement le récupérer directement via l’URL concerné - ce qui est possible avec verif)
  • recherche automatique du numéro de téléphone de la société, s’affichant à droite à chaque recherche google sur une société (en tapant « nom de la société » + « numéro département »)

Pour ceci, j’ai tout d’abord pensé à la fonction importxml de google spreadsheet. J’ai donc lu attentivement et suivi le tuto donné par deux.io (https://deux.io/importxml-importhtml-importfeed-tutorial/), cependant cela ne fonctionne pas chez moi pour de nombreux sites, dont google, et renvoi sans cesse la même erreur #N/A (impossible de récupérer cette URL : « URL google concerné ») ! J’avoue ne vraiment pas comprendre…même une simple requête du type =IMPORTXML(« https://www.google.fr/search?q=test";"//title ») renvoi vers cette même erreur (cela marche pourtant avec d’autres sites). Plus précisément, cela marche vraiment très rarement, de manière aléatoire…
Pour info, je n’ai pas encore essayé de passer par un proxy mais je ne pense pas que cela soit nécessaire étant donné qu’il s’agit de google spreadsheet…?

Je vous sollicite donc afin d’avoir vos conseils à ce sujet…! Une idée du problème ? Peut-être que cette méthode n’est pas la plus adaptée pour cet usage, je suis prêt à passer par un soft dédié au scraping si cela s’avère être la seule solution. A ce sujet, j’ai pu constater qu’il existe un très grand nombre d’outil de ce type, certains abordables en terme de prix (scrapebox, seotools for excel,…), lequel me conseillerez-vous pour cet usage particulièrement ? Sachant que je ne sais pas coder !

Je vous remercie d’avance et bonne journée à tous !

Romain

Hello Romain,

Peut être que ton soucis viens juste d’une erreur de paramétrage pour la récupération des infos que tu cherches. Le XPATH est parfois un peu compliqué à décortiquer. Peut-être que tu peux nous laisser ta commande complète avec une URL plus précise avec une société au hasard ?

Si tu cherches à extraire les données d’une recherche Google, tu peux utiliser l’extension Chrome Scraper qui fonctionne très bien pour un import sur Google spreadsheet.

Tu as aussi la solution Parsehub si tu ne sais pas coder, dont voici un tuto vidéo que j’ai mis en ligne sur Youtube : https://youtu.be/9Ri1smarRUQ

Hello Romain,

Je ne sais pas trop ce que tu as fais avec ta chaine de caractères mais il semble qu’il y ait des caractères étranges (les double quotes ne sont pas les mêmes), impossible que ça fonctionne en copiant collant ta requête dans Google Spreadsheet (ou peut être que ça vient d’ici).

En tout cas, je l’ai refais manuellement from scratch et ça fonctionne très bien:

=IMPORTXML(« https://www.google.fr/search?q=test »; « //title »)

image

1 J'aime

Merci de vos réponses rapides !

Alors, pour vous répondre dans l’ordre :

@Marco2 : Cela ne semble pas être le cas puisque :
1- Les requêtes fonctionnent tout de même de temps en temps
2- Même la requête la plus simple du type =importxml(« URL »;"//title") fonctionne 1 fois sur 30

Une commande issue de mon spreadsheet, avec une société au hasard :

=importxml(D3;"//h3[@class=‹ r ›]/a/@href")
Ou D3 est https://www.google.fr/search?q=AMAZON FRANCE SERVICES SAS 92 VERIF

@K-rAY : Merci pour les infos, mais les 2 outils que tu cites ne semblent pas correspondre à mon besoin (mais je me trompe peut-être) : elles permettent d’exporter les résultats d’un scraping vers un fichier excel / spreadsheet, mais ne permettent pas, à l’inverse, de réaliser les requêtes directement depuis google spreadsheet. Or, c’est précisément ce que je souhaite faire ! Mon fichier comporte plusieurs lignes de sociétés (une ligne = une société) et je souhaite réaliser mes recherche directement depuis ce fichier.

@ScrapingExpert : Oui, je pense que le soucis des caractères étranges provient du site, les double quotes de ta requête apparaissent bizarrement pour moi aussi. En tout cas, je me suis assuré que le problème ne venait pas de là sur mon spreadsheet.


C’est comme si le soucis était lié à mon IP, ou encore à mon compte google, je ne sais pas…

Comme je vous l’expliquais, et à titre d’exemple, il arrive qu’une requête fonctionne : si je la relance à nouveau, à l’identique, elle ne marchera pas….je quitte mon bureau puis, le lendemain matin, surprise : elle fonctionne à nouveau…bref, c’est incompréhensible !

Pour vous donner un autre exemple concret, en partant du spreadsheet suivant :
https://docs.google.com/spreadsheets/d/1CjuDh9_PO62kGWXWPueO8EisntYEDpwdRVbGc5kerTQ/edit?hl=en_US&hl=en_US&hl=en_US#gid=0
(trouvé sur le tuto https://www.distilled.net/blog/distilled/guide-to-google-docs-importxml/#chapter1)
J’ai beau copier-coller le contenu de ce spreadsheet public sur un nouveau spreadsheet privé, toujours le même problème…(#N/A : impossible de récupérer cette URL….)

Merci encore pour votre aide !!

Juste au cas où; tu fais cette requete sur une URL, quelques URLs ou alors on parle de centaines ?

Pour être honnête je pense que la méthode IMPORTXML n’est pas du tout fiable. Pour l’avoir testé plusieurs fois, elle bug sans raison, je suis même tombé sur un cas où il m’était impossible d’écrire un XPath autre que //node, du genre //node1/node2/node3 , il n’aimait pas du tout, et me renvoyait systématiquement une erreur.

2 J'aimes

@Marco2 : mon besoin concerne des fichiers comprenant des centaines de lignes de sociétés, donc d’URL oui…!
@ScrapingExpert : oui j’avais déjà cru comprendre que cette méthode n’était pas la plus fiable, surtout pour ce type d’usage (gros volume)…c’est vrai que pour un non développeur comme moi, ça semblait top dans l’idée car facile et gratuit mais je commence à perdre espoir …!

Voilà pourquoi je vous demandais également, lors de mon premier post, un conseil ou retour d’expérience, concernant un soft qui permettrait de répondre de la manière la plus précise et la moins onéreuse possible à mon besoin. Soit un soft dédié au scrapping (scrapebox, seo tools for excel,…), ou bien directement un soft dédié au Data-enrichment (societeinfo, anylead,…).

Je pense qu’un soft dédié au Data-enrichment pourrait convenir, mais il y a généralement des abonnements mensuels/annuels à payer, contrairement à certains outils de scrapping qu’on ne paye qu’une fois (comme scrapebox par exemple). Concernant scrapebox justement, je me demande si ce soft conviendrait à mon besoin…

Qu’en pensez-vous ?

Dans le cas où ton fichier concerne des centaines de lignes, il est certain que ca va planter.
J’ai utilisé l’IMPORTXML pour de petites quantités pour le moment et ce que je fais c’est de limiter à 50 le nbre d’URL et je sauve le résultat et supprime les requêtes du fichier, sinon ca représente bcp trop d’appels.

Pour le reste des softs et autres scripts, je ne me prononcerais pas étant vraiment un pure novice.

Pour enrichir des data de sociétés, les enpoints API de Clearbit sont ouverts via l’extension Gmail, mais :sushing_face:

PS : la data Anyleads c’est celle de Hunter, mais pas du tout à jour. Et societeinfo c’est juste l’open data du gouvernement, si tu ne veux pas payer :wink:

1 J'aime

C’est juste l’open data du gouvernement? Tu te fourvoyes allègrement :rofl:

L’open data ne fourni pas les emails, les tel, les sites web et les techno utilisées pour le site (plateforme e-commerce, etc).

Il y a bien un réel intérêt à payer l’API societeinfo :slight_smile:

Je comprends ton besoin, hélas étant un adepte des lignes de code que je mange chaque matin à la place des céréales, je ne peux te conseiller sur des softs ou solutions toutes faites.

Ma seule préconisation serait pour tout un chacun de se former au dev, une fois quelques connaissances de base acquises énormément de choses deviennent possibles.

@QuentinDty Oui, pour le coup je suis d’accord avec @ScrapingExpert concernant societeinfo, il ne s’agit pas simplement de l’opendata du gouvernement… En plus des infos qu’il vient de citer, je rajouterais également une fonctionnalité qui me semble vraiment très intéressante : la recherche par mots clés (pour citer le site de societeinfo : « Dans ce mode, la requête tapée sera recherchée partout y compris sur le site web des sociétés »). A voir ce que ça donne en pratique, je vais tester !

Sinon, tu pourrais m’en dire plus au sujet de l’API Clearbit via l’extension gmail ? Quel est le process à suivre ? Je pourrais le faire directement à partir d’un spreadsheet ?
Merci à toi !

@ScrapingExpert Oui je suis d’accord avec toi, c’est sûr que se former au dev reste la meilleure option…Le problème c’est que je n’ai vraiment pas le temps en ce moment, par contre cela reste un projet à moyen/long terme (j’avais d’ailleurs déjà commencé à suivre des formations sur openclassrooms) !

Ah my bad, j’ai parlé trop vite. La dernière fois que j’avais checké il n’y avais que l’open data :wink:

Hey @Romain11 malheureusement pour profiter « gratuitement » de l’API Clearbit, il faut là aussi passer par du code. Je pourrais t’en dire plus par MP, mais disons que le principe reste de reverse engineer les requêtes des extensions Gmail et Salesforce, et de faire « passer » ton script pour un mec qui utilise juste l’extension.

PS : leur endpoint de présentation pendant les démos commerciales est aussi ouvert, et permet d’enrichir des emails avec des noms/numéros de tél/pays, etc. Pareil, c’est via du code.

Merci @QuentinDty je prends note !

Sinon, comme je l’avais déjà évoqué, Scrapebox me parait être une bonne alternative… Je serais prêt à passer un peu de temps pour m’y former vu les avantages à terme !
J’ai passé un peu de temps sur le forum notamment, pour avancer dans mes recherches (sur cette page par exemple Outils de Scraping ?), mais les infos datent un peu et comme tout évolue très vite…
D’une manière générale on cite beaucoup d’outils, chacun à ses préférences, mais difficile pour moi de savoir lequel est le plus adapté à mon cas !

Concernant Scrapebox, et pour finir sur cet outil, je souhaitais tout de même avoir des avis sur 2 points :

  • Scrapebox me permettra-t-il de suivre le process que j’ai en tête (cf mes 2 premiers posts)

  • Sachant que je ne sais pas coder, est ce que l’utilisation de l’outil reste accessible pour moi ? Comme je l’expliquais, je suis prêt à prendre un peu de temps pour m’y former !

Du coup, pour avoir passé du temps sur le forum, j’ai vu que @camillebesse, entre autres, recommande souvent Scrapebox et semble bien connaitre l’outil…Si jamais tu passes par-là, aurais-tu un avis ?

Salut @Romain11,

Scrapebox est pour moi un outil très puissant qui offre de nombreux avantages. En effet, pas besoin d’avoir de notions en codage pour l’utiliser. En plus tu as un système de proxy super avancé :slight_smile:

Ses possibilités étant très nombreuses, il faut y passer un peu de temps et tu pourras voir quantité de vidéos sur Youtube.

En ce moment, je m’essai au scraping de vidéos youtube afin de les référencer sur mon site. En gros, je récupère une liste de vidéos suivant un thème, ou encore celles d’une chaine, puis je récupère les informations (titre, méta, description etc) de la vidéo pour les injecter ensuite.

Pour ton projet, Scrapebox va surement pouvoir t’aider, mais il te faudra surement croiser tes données, diversifier un peu les sources… Aussi, cet outil n’est pas infaillible et parfois il faut recommencer plusieurs fois afin d’avoir le résultat souhaité.