Comment créer son propre tool d'email verification?

Hello fellow hackers :v:,

Mon objectif est le suivant: créer mon propre email verifier tool :email:

Exemples d’email verifier tool:

  • ZeroBounce
  • Mailboxlayer
  • Neverbounce
  • Debounce

Je voudrais savoir comment est-ce que je pourrais créer ce genre d’outil ?

  • c’est pour un usage personnel donc sans le côté SAAS etc
  • Python de préférence
  • potentiellement jusqu’à 200K-400K verifications par mois (après là je veux déjà commencer petit avec quelques dizaine de mails tests).

Ce que je recherche:

  • des ressources pour apprendre à faire cela (sur Python)
  • votre retour d’experience si vous avez déjà tenté de fabriquer vous mêmes votre outils d’email verification

Merci pour votre aide :heart:

  • Pour vérifier si l’email est jetable, tu peux facilement en python.
  • Pour vérifier si le nom de domaine de l’email existe (type [email protected]), tu peux en python avec des check sur l’existance du nom de domaine.
  • Pour vérifier si l’email existe vraiment (impossible d’être sûr à 100%), il te faut une armée d’IPs clean, et que les emails que tu vas tester soient pas tous jeter (sinon, il te faudra une armée d’IPS encore plus grosse)

Si, comme je pense, tu veux faire ca pour vérifier des emails scrapés, à moins de faire un excellent ROI sur les emails que tu vas envoyer aux bons emails, tu ne seras pas rentable à faire ca avec ton propre outil.

1 « J'aime »

Merci Felix pour ta réponse,

Oui je te confirme c’est pour vérifier des emails scarpés (être le plus proche possible du 100%).

Qu’est-ce que tu veux dire par: « que les emails tester soitent pas tous jeter »?

De combien d’addresses IP on parle?
exemple: pour vérifier 1000 emails, combien d’IPs nécessaire?

Et techniquement (au delà des considérations économiques) comment est-ce qu’on créer ce verification tool? (tuto, ressources etc)

Salut Robs,

Ayant moi même développé ma propre solution de vérification d’email (www.mailnjoy.com), je peux te donner quelques tuyaux si tu veux :wink:

Pour compléter la réponse de Félix, sache d’abord que toute vérification sur un email inexistant, équivaut auprès du FAI concerné, comme si tu avais eut un bounce. Donc tu ne peux pas bourriner en testant a la chaine des 10ene, centaine, milliers (voir plus) d’addresss invalides avec une addresse IP sans que tu cours le risque (plus ou moins rapide selon le FAI) de te faire blacklister ton IP et/ou ton domaine (tout comme ce serait le cas si tu avais envoyé bcp d’email sur des addresses inexistantes)

Il te faut donc deja garder en tete que les FAI n’apprécie ni les bounces, ni les vérifications d’email invalides, et donc que tu va vite etre confronté a des problématiques de blocage de pars ces derniers.
Il faut donc en général etre en mesure de disposer de pas mal d’addresses IP afin de faire des rotations sur ces dernières et ne pas faire surchauffer tjrs la meme, c’est deja une base! Ensuite une des solutions assez couramment utilisée est d’utiliser des services cloud ou tu peux avoir des IP que tu pourra facilement faire tourner (azure, aws, ovh cloud, etc) sur tes serveurs SMTP de vérification.
Attention tout de même, d’expérience je peux te dire que les cloud vérifient parfois dans quel état tu rend les IP empruntées (dans leur CGU te dois normalement de les rendre non blacklistés), et si tu a été vraiment trop dans la démesure et que tu grillé plusieures IP en peu de temps, ils peuvent carrément te suspendre le service.
Il faut donc etre « raisonnable » et trouver un rythme, nombre d’IP adapté, et une vitesse de vérification qui permet de passer en dessous ds radars de chaque FAI :wink: (gmail ne réagissant pas comme outlook, ni comme yahoo, etc). Et ca tu le trouvera progressivement en fonction de ton nombre de vérification désiré par jour, et du pool de ressources/serveurs SMTP que tu aura créé pou ton offre

Sache également que la plupart des validateurs, dont celui que j’ai construis, essayent en général d’aller au dela de la simple valeur (valide / non valide) afin de donner plus de précisions sur d’autres métriques des addresse emails. Par exemple si récoltés des addresses de type « jetables » (20minutemail.com ou dans le genre), meme si techniquement valide, elle n’aura que peu d’intéret commercial… idem pour les domaines de type « catchall » qui acceptent tous les emails quelquesoit leur syntaxe, et donc qui ne permettront pas de savoir si effectivement les addresses validés sont réellement « valables » ou correspondent a des « puits sans fond » (que personne ne lis)

Et une dernière chose: un nombre non négligeable de mail déposés ci et la sur la toile sont des « spamtrap » généré par les gros FAI come gmail, destinés a dégrader la réputation de ceux qui enverront dessus, et ce sont des emails qui sont techniquement valides et donc qu’un validateur aura bien du mal a détecter dans tous les cas!

En espérant que ces quelques conseils te seront profitable, bon dev a toi :wink:

Renaud

6 « J'aime »

Super Renaud, merci pour ta réponse très claire & utile !

Quelques questions pour compléter:

Donc si j’ai bien compris ce qui va falloire prendre en compte dans la rotation d’addresse IP c’est:

  • le FAI
  • le fournisseur d’addresse IP (azure, aws, ovh cloud etc)
  • les server email (gmail, outlook, office 365 etc)

Est-ce que tu aurais une idée des limitations (en terme de requests email/heure par exemple) pour chaque addresse IP selon chaque case?

Aussi autres questions:

  • Comment est-ce que tu as dev tes servers SMTP? Est-ce que tu as des ressources pour apprendre à faire cela? (python de préférence)
  • Aussi en moyenne tu penses que ça me prendrais combien de temps pour dev un projet ce genre?

Je te remercie encore pour ta réponse !

Avec plaisir, content si ça a pu t’éclairer un peu plus :slight_smile:

Pour tes questions, en effet il faut que tu prenne bien en compte:

  • un mécanisme de comptage précis pour chaque gros webmail (gmail, yahoo, etc), et donc que tu sois capable en amont de segmenter bien les addresses que tu veux valider en regroupant par lot (celles qui vont les MX de gmail), celles qui vont vers les MX de microsoft (hotmail., outlook.), etc ainsi dessuite pour l’ensemble ds gros FAI connus (et aussi ceux plus locaux mais qui comptent une bonne part de trafic en france : free, orange et sfr :wink: )
    Le but ici sera de tenir a jour ds tables de comptages par webmail et par addresse IP, en associant l’horodatage des requetes pour veiller a te situer dans la limite des seuils maximum que tu aura déterminé au fur et a mesure. Sache que chaque addresse IP a sa propre réputation (qui est en général moyenne a la base qd tu la prend) et donc que pour continuer a pouvoir utiliser celle ci dans tes services, le but du jeu est donc de ne pas la dégrader « trop »,faute de quoi ça la ferait passer sous le seuil de délivrabilité, et donc la rendrait inutilisable. Dans la pratique les seuils de chaque FAI se déterminent assez facilement, il faut faire du benchmark en testant a différente vitesses, et voir a partir de quand ça commence a bloquer…et définir ensuite ces seuils médium (par webmail) pour la suite.

  • Garde également en tête que plus tu aura de mail invalides dans ton lot (en pourcentage par rapport a ceux qui sont valides) et plus la réputation de ton IP diminuera rapidement, c’est donc un paramètre a garder en tete afin de réajuster la vitesse de tes flux / rotation en fonction du feedback en temps réel des résultats de tes vérifs.

  • le prix global des instances que tu va créér (container? VM?) et a la fois le prix, mais aussi la simplicité de provoquer des rotation des addresses IP qui leur seront ratachées (en pensent bien que ça doit etre faisable par API pour éviter toute intervention humaine qui deviendrait vite très fastidieuse!). Chaque prestataire de cloud a ses propres tarifs et ses spécificités, mais les plus connus permettent tous au final tous de faire ce dont tu a besoin (il faut juste selectionner celui qui correspond le plus a ton besoin en ayant pris soin de comparer le prix des instances et addresses IP, puissance de calcul nécéssaire a ton appli, etc)

  • Pour une IP classique d’un cloud (non warmé), en général pour avoir une idée, si tu reste a 1 mail toutes les 10 secondes, en général ça passe plutot bien :wink: Ca te donne une idée du débit possible moyen journalier si tu multiplie et parallélise sur X webmail a la fois

Je peux pas vraiment te donner de tuto d’apprentissage sur la technique a utiliser ensuite, ça peut se devellopper sous plein de language différent, la c’est vraiment open!
Moi a la base j’ai travaillé pendant 5 ans chez un routeur email dans la partie délivrabilité avant de me lancer et de créér ma propre solution de validation/dataquality, donc j’ai pu acéquirir au travers des années l’expertise métier de l’Emailing.
Puis comme je suis informaticien j’ai débuté le code pur de tout ça, et ça m’a pris 3 ans avant d’avoir le service pleinement opérationnel que j’ai actuellement (mais c’était dans un but de SAAS, API donc ça prend forcément plus de temps que si tu fais un truc custo uniquement pour tes propres besoins et sans habillage graphique précis)

Voila en espérant que ça t’aura apporté des précision utiles!

Bon courage dans ton dev :slight_smile:

Renaud

6 « J'aime »

Super input Renaud !
Je viens de voir vos prix, si la qualité est au rdv, c’est top! Vous avez une API de prévu ?

Merci Felix, content que ça puisse aider!

Oui bien sur, nous avons une API, tout le détail d’intégration est disponible sur la documentation :slight_smile:
Pour ce qui est de la qualité, on y a travaillé acharnement justement depuis des années donc j’espère bien que c’est le cas! :wink:
Si tu souhaite essayer et te faire ta propre idée, n’hésite pas a me contacter (ou directement sur le site) je me ferai une joie de t’offrir un pack découverte gratos :slight_smile:

Renaud

Intéressant, je ne connaissais pas ton service. Si ça ne te dérange pas, je veux bien tester pour comparer avec un autre :slight_smile:

Pour pouvoir ramener « du client », tu peux aussi faire un programme d’affiliation qui peut avoir un effet boule de neige.

Merci de ton message Newty!
C’est avec plaisir que je t’offre un pack découverte pour que tu puisse te faire ta propre idée :slight_smile:
Bonne idée également pour le programme d’affiliation également, on va s’y pencher plus bientôt je pense, merci à toi!

Renaud

Des retours d’expérience sur mailnjoy ?

j’up ce post afin de voir si il y a eu des retours d’expérience car le service semble pas mal et bon rapport qualité prix…

@Skrapper_Man et @BENDO1 ,

On commence à avoir quelques premières personnes de ce forum qui testent notre service, j’espère qu’ils viendront s’exprimer pour donner leur avis :wink:

En attendant vous pouvez également le tester par vous même gratuitement (on offre des packs de bienvenus de 5000 crédits actuellement, ça permet qd même de se faire une bonne idée :wink: ), il suffit de nous contacter via le formulaire d’inscription du site ou directement sur mon addresse si vous préférez ([email protected])

N’hésitez pas en tout cas :slight_smile:

Renaud

Salut
Est ce que tu proposes une api ?
J’ai crée aspir.io pour scraper Google mo et facebook
J’aimerai intégrer un vérificateur d’email

1 « J'aime »

Bonjour Jean-Bernard,

Oui nous avons bien une API, tu peux trouver le détail d’intégration ici: GitHub - mailnjoy/check-api: API partenaire de Check by Mailnjoy

Pour le moment l’API est utilisable uniquement pour les validations unitaires en temps réels (simples et approfondies), pas encore pour la partie campagnes bulk.
Dans ton cas de figure et d’après ce que j’ai compris, il me semble que c’est bien de la validation unitaire en temps réel dont tu aurais besoin pour raccorder ton outils, donc n’hésite pas a me contacter directement si tu veux faire un essai gratuit et voir si ça pourrait convenir dans ton intégration! :slight_smile:

Renaud

Possible de tester ton pack découverte ? On fait du gros volume et on recherche une solution de ton type

Bonjour Xback,

Oui bien sur! :slight_smile:
Je t’envoi un MP pour ton inscription et ton pack découverte gratuit :slight_smile:

Renaud

Merci Renaud pour toutes ces explications, je ne connaissais pas votre solution, c’est ce que je recherche, serait-il possible de tester aussi un pack de découverte?

Merci ton message japanbird! :slight_smile:
Bien entendu, tout comme pour les précédentes personnes qui m’ont contacté je suis ravi de te permettre d’essayer notre outils gratuitement pour te faire ta propre idée :wink:

Je t’envoie un MP :slight_smile:

Renaud

Bonjour à tous, J’ai quelques questions de novice sur le principe de la validation d’emails.
J’ai récupéré une liste de leads à partir d’une recherche Sales Navigator, et je l’ai enrichie avec ColdCRM. (environ 760 mails trouvés sur une liste de 1200 leads). ColdCRM fait une qualification des emails en Extra Valide (27% du total), Valide (18%), et prédits (18,5%).

J’ai passé cette liste au travers de divers outils de validation, notamment Super email validator et Neverbounce. Les résultats diffèrent énormément, et sont souvent assez contradictoires avec la qualification de Cold CRM.

Bref, je suis plutôt perplexe: Qui faut-il croire? Est ce normal d’avoir un taux de déchet aussi élevé? (si je prends les résultats de Neverbounce, j’ai 270 emails valides en tout sur les 760 initiaux).

Merci par avance pour votre aide.

@RenaudGarelli je serai ravi de tester MailnJoy et d’en faire un retour sur le forum.