207 lecturas

Canso de pagar por correos electrónicos? construímos un Sleuth con enerxía residual en vez (e si, recibimos un reembolso)

por 3m2025/05/08
Read on Terminal Reader

Demasiado longo; Ler

RocketReach, Hunter, Lusha obter caro, rápido. entón construímos unha alternativa de código aberto para descubrir e verificar correos electrónicos profesionais.
featured image - Canso de pagar por correos electrónicos? construímos un Sleuth con enerxía residual en vez (e si, recibimos un reembolso)
undefined HackerNoon profile picture

Se está a facer calquera tipo de vendas B2B, marketing outreach, contratación, ou mesmo só unha serie de redes, atopar o enderezo de correo electrónico profesional correcto é crucial.caroPagar centos ou miles por ano só para verificar a información de contacto pode sentirse como un mal necesario, especialmente para startups ou equipos máis pequenos.


O choque do adhesivo, combinado cun amor por Rust e un bo desafío técnico, é exactamente por isoEmail SleuthÉ o noso intento de código aberto para construír un poderoso,Eficiencia de custosalternativa para descubrir e verificar correos electrónicos profesionais. esquece as licenzas por asento e os límites de crédito; isto é sobre tomar o control de volta.

Como funciona?Máis que simples patróns

No seu núcleo, Email Sleuth é máis intelixente que simplemente espiar unha lista de patróns comúns (aínda que tamén o fai!).


  1. Xeración de patróns intelixentes: Comeza xerando unha lista completa de formatos de correo electrónico probables baseados nos primeiros e últimos nomes (john.doe, jdoe, johnd, doe.j, etc.) combinados co dominio de destino.
  2. SMTP Verification (The Classic Check): This is the old-school method. Email Sleuth connects directly to the company's mail server (found via MX records) and politely asks, "Hey, would you accept mail for jdoe@example.com?" using standard SMTP commands (MAIL FROM, RCPT TO). A direct "yes" or "no" is great!
    • The Catch: This is becoming less reliable. Many servers block these probes, use temporary "greylisting" delays, or worse, are configured as "catch-alls" that accept everything, telling you nothing about a specific address. We now specifically test for and handle catch-all domains.
  3. Headless Browser Magic (The Clever Workaround): When SMTP lets us down, we get creative. Email Sleuth can fire up a headless Chrome browser (using the fantoccini Rust crate and needing a running WebDriver instance like chromedriver) and automate common web flows:
    • Yahoo & Microsoft Password Resets: We mimic a user trying to reset a password for the target email. The screens shown or errors encountered during these flows often reveal whether an account actually exists, even when SMTP is useless! It's a bit like lockpicking, but for email validation.
  4. API Heuristics (The Educated Guess): Para as contas de Microsoft 365, temos outro truco. Prediquemos a URL de OneDrive para Empresas do usuario e enviamos un cheque rápido (unha solicitude HEAD).Con base no código de estado HTTP devolto (como un 403 Prohibido moitas veces significa "existe" vs. 404 Non atopado), podemos facer unha adiviñación educada.
  5. Recoñecemento do provedor: Email Sleuth intenta identificar o provedor de correo electrónico (Gmail, Microsoft 365, Yahoo, etc.) baseado nos rexistros do servidor de correo do dominio. Isto axuda a elixir a mellor estratexia de verificación.
  6. Cada peza de evidencia (pattern match, SMTP result, headless check out, API hint) contribúe a unha puntuación de confianza (0-10) para cada correo electrónico potencial.

Construído con resina, deseñado para a eficiencia

Por que Rust? Velocidade, seguridade e excelente soporte de concorrencia (tokio) son perfectos para este tipo de tarefas vinculadas á rede. Podemos executar múltiples comprobacións simultaneamente, manexar os timeouts graciosamente e xestionar os recursos de forma eficaz. As crateras clave que alimentan o núcleo inclúen reqwest (HTTP), trust-dns-resolver (DNS), lettre (SMTP), fantoccini (sen cabeza), serde/toml (datos) e clap (para o CLI).


Recentemente, realizamos un gran refactor, dividindo a lóxica nunha biblioteca de núcleo (corazón de correo electrónico) e unha ferramenta CLI separada. Isto fai que a lóxica de núcleo sexa reutilizable noutros proxectos Rust e mantén a base de código máis limpa e máis fácil de manter mentres engadimos máis voodoo de verificación.

Dálle unha Whirl

Podes usar Email Sleuth de dúas maneiras:

  • The CLI Tool:
    • Single lookup: email-sleuth --name "Jane Doe" --domain "example.com"
    • Batch processing: email-sleuth --input contacts.json --output results.json
    • Enable advanced checks: email-sleuth ... --enable-headless-checks --webdriver-url http://localhost:9515 (See docs/config for more flags!)
  • The Core Library:
    • Add email_sleuth_core to your Cargo.toml.
    • Use the ConfigBuilder to set up your configuration.
    • Call initialize_sleuth(&config).await to get started.
    • Use find_single_email(...) or process_contacts(...) for the magic.


Atopar correos electrónicos aínda é un negocio complicado, unha mestura de exploración técnica e adiviñación educada. Email Sleuth ten como obxectivo traer máis ciencia (e algúns hacks intelixentes) á mesa.


Check out the project aquí!Gustariamos de feedback, especialmente sobre as características experimentais sen cabeza e API. Imos facer atopar eses correos electrónicos un pouco menos doloroso!

aquí

Trending Topics

blockchaincryptocurrencyhackernoon-top-storyprogrammingsoftware-developmenttechnologystartuphackernoon-booksBitcoinbooks