Email Phone Extractor: Une API puissante pour extraire téléphones, emails et réseaux sociaux

Hello le forum ! :wave:

La semaine dernière, nous avons réalisé un projet intéressant pour l’un de nos clients : une API qui permet d’extraire différentes informations à partir d’une URL en utilisant des expressions régulières. Voici les éléments que nous sommes capables de récupérer :

  • Adresse e-mail
  • Numéros de téléphone
  • Profils LinkedIn
  • Comptes Twitter
  • Comptes Instagram
  • Pages Facebook
  • Comptes TikTok
  • Profils Pinterest
  • Comptes Snapchat
  • Chaînes YouTube
  • Forums Reddit
  • Groupes Telegram
  • Profils Crunchbase

Cette API est conçue pour faciliter la collecte de données en automatisant le processus de recherche de ces informations sur des pages web spécifiques.

Ex pour le site hexa.cc

GET 'https://piloterr.com/api/v2/website/email_phone_extractor?query=https://www.hexa.cc'

{
    "emails": [
        "[email protected]"
    ],
    "phone_numbers": [],
    "linkedin_profiles": [
        "https://www.linkedin.com/company/hexacc/"
    ],
    "twitter_profiles": [
        "https://twitter.com/hexacc"
    ],
    "instagram_profiles": [
        "https://www.instagram.com/hexa.cc/"
    ],
    "facebook_profiles": [],
    "tiktok_profiles": [],
    "pinterest_profiles": [],
    "snapchat_profiles": [],
    "youtube_channels": [],
    "reddit_profiles": [],
    "telegram_channels": [],
    "crunchbase_profiles": []
}

Si vous un êtes un logiciel ou une entreprise dans la data, vous pouvez me mp :email:

4 « J'aime »

Impressionnant bravo !!
Quel stack technique utilisez vous ?

La liste est longue… pour le scraper c’est du Python!

C’est très intéressant. Depuis quelques semaines je m’intéresse à la même idée de base mais via directement une liste d’URL sur Google Sheets avec les fonctionnalités de l’Apps Script. Il y a quelques autres informations qui pourraient être sympa comme la langue du site, meta title, meta description, l’adresse physique, si il y a un bouton « Se Connecter »/« S"inscrire », le nom du CMS du site mais un peu plus compliqué à récupérer avec des RegEx.

Ça pourrait être aussi sympa d’en faire une extension de navigateur qui t’affiche toutes les informations que tu cites, que tu peux facilement venir copier/coller ou tu veux. Ou encore un bouton « Ajouter » lié à une feuille Google Sheets qui t’ajoute une nouvelle ligne sur ton docs avec les infos récupérées.

1 « J'aime »

Top :+1:

Tu as fait ça avec des Regex ?
Et tu as une option pour aller sur un (ou plusieurs) niveau de profondeur ?

Nice.
je pense qu’il utilise un paquet de regex, sinon c’est impossible de faire un truc propre pour les tel, sachant qu’il doit gérer tous les types de tel étrangers. Si c’est bien fait c’est un long travaille, gg à lui

Tu geres les cloudflare et autres ?
la rapidité pour crawler 4 millions de site web ? sur un gros serveur ?
Pas de puppeteer?
Possibilité de l’installer chez soit, ou on dépend de ton infra?
Tarots ?
Tu géreras les adresses aussi ?

J’ai dev aussi ma soluce mais pour crawler 4 millions de sites web, avec 2*2 vm a des lieux différents ca prends 10 jours et pour faire de la masse, je perds 5 % des sites protégés environ

1 « J'aime »

J’ai aussi ce genre de feature mais je segmente les endpoints car ce n’est pas la même techno (request vs puppeteer).

Oui pour les petits besoins, de mon côté je cherche les gros volumes… :spider: Tu as déjà vu des extensions dans ce style?

Oui !

Non ce n’était pas le besoin, puis les réseaux sociaux sont souvent dans le footer de nos jours.

Oui, notre spé réside dans le fingerprinting, on n’est pas un vendeur de regex qu’on pourrait trouver sur gpt :face_exhaling:

Un gros thread et c’est bon :smiley:

3 « J'aime »

Merci pour ta réponse
Et la database ? Pour absorber les requêtes en concurrence ?

On n’a pas de db, c’est du real-time pour le moment. La db viendra si on fait plusieurs millions de req par semaine pour optimiser notre infrastructure!

Décidément vous êtes des ninjas ds votre team.
Pour l’infrastructure
Aws ou serveurs dédiés ?

Mdrrr alala je suis bien curieux combien tu vends ça :wink:

Serverless

Nos prix sont visibles sur notre site

1 « J'aime »

Salut @josselin
super pratique de l’avoir par API :+1: congrats !

pour ceux qui codent un peu, ce repo github liste les regex des principaux reseaux sociaux: social-media-profiles-regexs/regexes.json at master · lorey/social-media-profiles-regexs · GitHub

5 « J'aime »

Salut @cebri merci ! L’API n’est pas complexe avec ses regex… le plus intéressant reste la tech de fingerprint derrière :raised_hands:

Ou peut on tester cette Api ?

Bravo :clap: :clap: impressionnant

1 « J'aime »

Alors… Comment dire… J’ai pas tout compris ><’

Quelqu’un peut m’expliquer ce qu’un Regex ?
J’utilise du no-code, je suis donc bien étranger à tout ça…

2 « J'aime »

Hello petite update!

Notre API progresse bien sur Google :smirk: maintenant on doit faire nos preuves pour que le SaaS :fr: brille à l’international…

Du coup nous avons significativement amélioré le code source depuis l’année dernière. Maintenant il est possible de spécifier un pays (e.g country_code=FR) pour récupérer un numéro de téléphone, ainsi notre système réalise plusieurs vérifications en cascade interne afin de valider ou non le numéro trouvé sur le site en temps réel. Des entreprises ont intégré notre API avec n8n et leur CRM pour mettre à jour les numéros de téléphone génériques et initier de la prospection, ça fonctionne pas trop mal!

Ex de réponse

{
    "emails": [
        "[email protected]"
    ],
    "phone_numbers": [
        {
            "e164": "+3397518xxxx",
            "local": "09 75 xx xx xx",
            "valid": true,
            "country": "FR",
            "rawLocal": "097518xxxx",
            "countryCode": 33,
            "international": "3397518xxxx"
        }
    ],
    "reddit_profiles": [],
    "tiktok_profiles": [],
    "twitter_profiles": [
        "https://twitter.com/LenstoreFR"
    ],
    "youtube_channels": [],
    "facebook_profiles": [
        "https://www.facebook.com/Lenstore.fr"
    ],
    "linkedin_profiles": [],
    "snapchat_profiles": [],
    "telegram_channels": [],
    "instagram_profiles": [
        "https://www.instagram.com/lenstore.fr"
    ],
    "pinterest_profiles": [],
    "crunchbase_profiles": []
}

Merci à @telmo_crp pour les tests & bulks :heart_hands:

3 « J'aime »

Pour donner suite à cette question qui revient en mp : « fourchette sur le taux d’enrichissement » avec l’API :