emails

Crates.ioemails
lib.rsemails
version1.0.0
sourcesrc
created_at2024-09-13 03:27:11.17799
updated_at2024-09-13 03:27:11.17799
descriptionA web scraper to extract email addresses from websites.
homepagehttps://github.com/cybrly/emails
repositoryhttps://github.com/cybrly/emails
max_upload_size
id1373330
size68,644
Cybrly (cybrly)

documentation

https://github.com/cybrly/emails

README

Emails Scraper

emails is a Rust-based command-line tool for scraping emails from websites. It takes a URL as input, searches the website for email addresses, and prints the results to the console. The tool offers several features, including multi-threading, recursion depth, timeout handling, and strict domain matching.

Features

  • Automatically append http:// or https:// if the protocol is missing.
  • Recursively scrape emails from the provided URL.
  • Print emails matching the URL domain in green; others are printed in white.
  • Configurable recursion depth and number of threads.
  • Timeout handling for long-running scrapes.
  • Optional strict mode to only print emails matching the provided domain.
  • Progress tracking and real-time output of results.

Usage

Basic Usage

./emails

Options

  • -d, --depth <DEPTH>: Set the depth of recursion. Default is 2.
  • -t, --threads <THREADS>: Set the number of threads to use. Default is 4.
  • --timeout <SECONDS>: Set the timeout for the scrape. Default is 60 seconds.
  • --strict: Only print emails that match the domain of the provided URL.

Examples

Scrape emails from a website:

./emails https://example.com

Scrape emails with a recursion depth of 3 and 8 threads:

./emails -d 3 -t 8 https://example.com

Scrape emails in strict mode:

./emails --strict https://example.com

Building from Source

To build the project from source, make sure you have Rust installed, then run:

cargo build --release

The executable will be available in target/release/emails.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Commit count: 0

cargo fmt