Skip to main content

Extract Emails

Image

PyPI version

Extract emails and linkedins profiles from a given website

Documentation

Requirements

  • Python >= 3.10

Installation

# Install the backend you need; HTTPX and Playwright are independent extras.
pip install "extract-emails[httpx]"
# Or, for Chromium:
pip install "extract-emails[playwright]"
playwright install chromium --with-deps
# Install both optional backends only if you need both:
pip install "extract-emails[all]"

Quick Usage

As a library

The HTTPX backend supports synchronous and asynchronous extraction. Substitute a URL for a site you are authorized to crawl (a local test server is suitable). Each function owns and closes its browser; call the function you need.

from pathlib import Path

from extract_emails import DefaultWorker
from extract_emails.browsers import HttpxBrowser
from extract_emails.models import PageData


def run_sync(url: str) -> None:
    with HttpxBrowser() as browser:
        worker = DefaultWorker(url, browser)
        data = worker.get_data()
    PageData.to_csv(data, Path("output-sync.csv"))


async def run_async(url: str) -> None:
    async with HttpxBrowser() as browser:
        worker = DefaultWorker(url, browser)
        data = await worker.aget_data()
    await PageData.ato_csv(data, Path("output-async.csv"))


# Call one from your application, for example:
# run_sync("http://127.0.0.1:8000/")
# In an async function: await run_async("http://127.0.0.1:8000/")

Install only the browser backend you use: pip install "extract-emails[httpx]" for HTTPX, or pip install "extract-emails[playwright]" followed by playwright install chromium --with-deps for Chromium. The extras are independent; installing one does not install the other. For Chromium, replace HttpxBrowser with ChromiumBrowser in the corresponding sync or async context manager and install the Playwright extra. Install both extras only if you need both backends. pip install "extract-emails[all]" installs all extras.

As a CLI tool

The CLI defaults to extracting email addresses. You can request both supported data types with a comma-separated list:

extract-emails --help
extract-emails --url http://127.0.0.1:8000/ --output-file output.csv \
  --browser-name httpx --data-type email,linkedin

--browser-name accepts httpx or chromium; its default is chromium. --data-type defaults to email; accepted values are email and linkedin. The CSV columns include website and page_url metadata, followed by requested data columns that are present in the crawl.

Metadata

Release files for extract-emails 6.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for extract-emails 6.2.0
File Size Uploaded Provenance Actions
extract_emails-6.2.0.tar.gz 326.1 kB With provenance Details for extract_emails-6.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for extract-emails 6.2.0
File Interpreter ABI Platform Actions
extract_emails-6.2.0-py3-none-any.whl Python 3 none any Details for extract_emails-6.2.0-py3-none-any.whl

Total release size: 357.5 kB

Release files / extract_emails-6.2.0.tar.gz

Download URL extract_emails-6.2.0.tar.gz
Size 326.1 kB
Tags Source
SHA-256 checksum
How to use checksums
73707a0734fcc00e4aaec3ea46bde87c15c7cc7acb72815743936e77fb7012bd
BLAKE2b-256 checksum
How to use checksums
d7749b0562ee6bf9110a85c3b4195fd6416d252226c18dd741f725c914900e6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

Release files / extract_emails-6.2.0-py3-none-any.whl

Download URL extract_emails-6.2.0-py3-none-any.whl
Size 31.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
afe9fbca9db26a6c4e687464ccc2db73c80a46f11594404c13aefc350f34a909
BLAKE2b-256 checksum
How to use checksums
af3f46612a03ccdde6fb848dd9a03bb11a484772348daaa596be99eab207a81a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

Security for extract-emails 6.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for extract_emails-6.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

6.2.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page