Un outil Python pour extraire des adresses email depuis des pages web ou des fichiers texte.
Project description
mailgrab
mailgrab est un outil Python permettant d'extraire des adresses email à partir de pages web ou de fichiers texte. Il utilise les expressions régulières pour identifier et extraire les emails, et Playwright pour le scraping web. Ce projet est idéal pour récupérer des adresses email à partir de différentes sources.
Fonctionnalités
- Extrait des adresses email à partir d'une URL de site web ou d'un fichier texte.
- Utilisation de Playwright pour l'extraction de contenu de pages web avec gestion des erreurs.
- Recherche d'emails via des expressions régulières.
- Interface en ligne de commande simple à utiliser.
- Support pour l'extraction unique ou multiple (selon le nombre d'emails trouvés).
Installation
Avant d'utiliser mailgrab, assure-toi que Python 3.x est installé sur ta machine.
Étapes d'installation :
-
Cloner le dépôt :
git clone https://github.com/nanaelie/mailgrab.git
-
Installer les dépendances et installer globalement :
Accède au répertoire du projet et installe les dépendances nécessaires :
cd mailgrab pip install .
Remarque : Assurez-vous que Playwright est correctement installé. Vous pourriez également avoir besoin de télécharger les navigateurs utilisés par Playwright avec cette commande :
python -m playwright install
Utilisation
mailgrab fonctionne en ligne de commande et accepte deux types d'entrées : une URL de site web ou un chemin vers un fichier texte.
Extraire des emails depuis une URL
Si tu souhaites extraire des emails d'une page web, utilise la commande mailgrab et fournis l'URL du site :
mailgrab --url "https://example.com"
Cela extraira les adresses email présentes sur la page web à l'URL spécifiée.
Extraire des emails depuis un fichier texte
Pour extraire des emails à partir d'un fichier texte, utilise l'option --file et fournis le chemin du fichier :
mailgrab --file "chemin/vers/le/fichier.txt"
Cela extraira les adresses email présentes dans le fichier texte.
Options disponibles
--url <url>: URL du site web à partir duquel les emails seront extraits.--file <chemin_du_fichier>: Chemin vers un fichier texte pour extraire les emails.
Exemple d'exécution :
Depuis une URL :
mailgrab --url "https://example.com"
Depuis un fichier :
mailgrab --file "texte_emails.txt"
Validation des chemins de fichiers
Le script vérifie que le chemin du fichier passé en argument existe, est un fichier valide et est accessible en lecture. Si le fichier ne peut pas être ouvert ou si le chemin est incorrect, une erreur détaillée sera affichée.
Contribuer
Si tu souhaites contribuer à mailgrab, voici les étapes à suivre :
- Fork ce dépôt.
- Crée une nouvelle branche (
git checkout -b ma-nouvelle-fonctionnalité). - Apporte tes modifications.
- Commit tes changements (
git commit -am 'Ajout de la fonctionnalité X'). - Pousse tes modifications (
git push origin ma-nouvelle-fonctionnalité). - Ouvre une pull request pour fusionner tes changements avec le dépôt principal.
Licence
Ce projet est sous licence MIT - consulte le fichier LICENSE pour plus de détails.
Contact
Si tu as des questions, des suggestions ou des problèmes, n'hésite pas à ouvrir une issue sur le dépôt GitHub ou à me contacter directement.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mailgrab-1.1.0.tar.gz.
File metadata
- Download URL: mailgrab-1.1.0.tar.gz
- Upload date:
- Size: 4.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
621cf92138c5d2fd35d9f5e0bd2634797b8eb4b8bc159072264477be7290e6de
|
|
| MD5 |
ecd3bba59b4a484d1427f176389234fb
|
|
| BLAKE2b-256 |
e3cf83c9117d566a13ddbae2f240b6c36c6e2a0789a9d8d705ccdf00d19a9317
|
Provenance
The following attestation bundles were made for mailgrab-1.1.0.tar.gz:
Publisher:
python-publish.yml on nanaelie/mailgrab
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mailgrab-1.1.0.tar.gz -
Subject digest:
621cf92138c5d2fd35d9f5e0bd2634797b8eb4b8bc159072264477be7290e6de - Sigstore transparency entry: 206253069
- Sigstore integration time:
-
Permalink:
nanaelie/mailgrab@3ad3c5d3492c3522c5559d4ca79fe6ed000f9f42 -
Branch / Tag:
refs/tags/v1.1.0 - Owner: https://github.com/nanaelie
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@3ad3c5d3492c3522c5559d4ca79fe6ed000f9f42 -
Trigger Event:
release
-
Statement type:
File details
Details for the file mailgrab-1.1.0-py3-none-any.whl.
File metadata
- Download URL: mailgrab-1.1.0-py3-none-any.whl
- Upload date:
- Size: 5.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ad7d91a9d869228f5b6623f687a62ef2ebb62d0fc348b558f5872a371eb86706
|
|
| MD5 |
e0c84327e3492ed5e6347b8e1f446524
|
|
| BLAKE2b-256 |
194d23db5bb1b3228bf57d0c9c05d3236306078019d41f8d135ce15f6b67865c
|
Provenance
The following attestation bundles were made for mailgrab-1.1.0-py3-none-any.whl:
Publisher:
python-publish.yml on nanaelie/mailgrab
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mailgrab-1.1.0-py3-none-any.whl -
Subject digest:
ad7d91a9d869228f5b6623f687a62ef2ebb62d0fc348b558f5872a371eb86706 - Sigstore transparency entry: 206253072
- Sigstore integration time:
-
Permalink:
nanaelie/mailgrab@3ad3c5d3492c3522c5559d4ca79fe6ed000f9f42 -
Branch / Tag:
refs/tags/v1.1.0 - Owner: https://github.com/nanaelie
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@3ad3c5d3492c3522c5559d4ca79fe6ed000f9f42 -
Trigger Event:
release
-
Statement type: