Skip to main content

GitHub Email Scraper

Scrape GitHub for email addresses associated with a username. Search through public events and commits in the user's repositories.

Requirements

  • Python 3
  • Requests (pip3 install requests)

Installation

PIP

pip install github-email-scraper

Manual install

  1. pip install -r requirements.txt
  2. python setup.py install or pip install .

Standalone

Just run the github_email_scraper.py script in the github_email_scraper directory.

Usage

Specify a username with -u or a file containing usernames (one per line) with -U. Choose to either search commits (--commits), events (--events), or both (--all).

Installed

github-email-scraper -u USERNAME --all

Standalone

python github_email_scraper.py -u USERNAME --all

Full usage

usage: github_email_scraper.py [-h] (-u USER | -U USER_LIST) [-c] [-e] [-a] [-o] [-n] [-r] [-l AUTH_USER] [-t TOKEN]

Scrape GitHub for email addresses associated with a username. Choose to search through public events (--events), commits in the user's repositories
(--commits), or both (--all). Specify users on the command line (-u) or load a file with one user per line (-U).

optional arguments:
  -h, --help            show this help message and exit
  -u USER, --user USER  Target GitHub username
  -U USER_LIST, --user-list USER_LIST
                        File containing list of target GitHub usernames, or - for stdin
  -c, --commits         Look through user's commits in their repos
  -e, --events          Look through user's public events
  -a, --all             Commits and events
  -o, --other-users     Include emails from commits not associated with the GitHub user. This may find other email addresses beloning to the user that they haven't manually associated with their GitHub account, but may also contain a lot of emails from other accounts if the repo is a fork or has multiple contributors.
  -n, --name            Show commit/event author name
  -r, --repo            Show repo the email was (first) found in
  -l AUTH_USER, --auth-user AUTH_USER
                        Your GitHub username to use for authentication; use with --token
  -t TOKEN, --token TOKEN
                        Your GitHub personal access token; use with --auth-user

Increasing your rate limit

GitHub limits the number of unauthenticated API requests per IP address. To get around this, create a personal access token on GitHub under your user's Settings -> Developer settings -> Personal access tokens. It does not need any scopes. Then use it in this program by setting --auth-user YOUR_GH_USERNAME --token YOUR_TOKEN.

Metadata

Release files for github-email-scraper 1.0.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 github-email-scraper 1.0.0
File Size Uploaded Provenance Actions
github-email-scraper-1.0.0.tar.gz 4.1 kB Without provenance Details for github-email-scraper-1.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for github-email-scraper 1.0.0
File Interpreter ABI Platform Actions
github_email_scraper-1.0.0-py3-none-any.whl Python 3 none any Details for github_email_scraper-1.0.0-py3-none-any.whl

Total release size: 9.4 kB

Release files / github-email-scraper-1.0.0.tar.gz

Download URL github-email-scraper-1.0.0.tar.gz
Size 4.1 kB
Tags Source
SHA-256 checksum
How to use checksums
b8197751baccf3f123497b838178ec4217c2d5ede04615279a1f4066221df4a2
BLAKE2b-256 checksum
How to use checksums
922b102a5bc27603448c9eb88360482f8e263525a315633a358c5be953e3b3bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.5

Release files / github_email_scraper-1.0.0-py3-none-any.whl

Download URL github_email_scraper-1.0.0-py3-none-any.whl
Size 5.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e0757459d20fd12165593f1e5384738676f8a6f554cde0db5288b9a0cec3826b
BLAKE2b-256 checksum
How to use checksums
7e9dd1c955b654847111a994255e03a8f7e98c5c22db81b470a7e3ae069e46c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.5

Security for github-email-scraper 1.0.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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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

1.0.0 This release

2 release files No 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