Email classification program powered by machine learning.
Report linked to this project: TER - Rapport Final - Maxime Princelle.pdf.
By Maxime Princelle.
Table des matères :
[[TOC]]
Un fichier requirements.txt est mis à disposition et contient toutes les librairies nécessaires au bon fonctionnement du programme.
Le programme fonctionne avec Python 3.
Exécutez le programme principal:
python3 main.py
et suivez les instrucutions.
Pour utiliser le fichier d'environnement, copiez le fichier .env.example en .env
et remplissez ce dernier avec vos informations de connexion.
Quand un fichier .env
est présent à la racine du projet avec les bonnes valeurs, aucune intervention n'est requise sur l'interface en ligne de commande.
Lors des tests, le téléchargement des données peut être long, pour remédier à cela, il est possible d'exporter/importer les données.
Pour exporter les données, rajoutez l'option -e
à l'appel du programme principal :
python3 main.py -e
Après téléchargement, vous obtiendrez un fichier .pickle
(format pour DataFrame Pandas) avec le nom suivant : export_{email_address}.pickle
.
Pour réutiliser cet export et éviter le téléchargement des données, utilisez l'option -i
:
python3 main.py -i
cette option va utiliser l'adresse mail indiquée dans le fichier .env
ou donnée dans les instructions au démarrage du programme.
PS: Bien que les données soient déjà présentes, toutes les informations de connexion doivent être présentes au lancement du programme.
Importez la fonction main
de [main.py](./main.py`.
from classifier-ai.main import main as classfier
login_info = {
'email': "mail-classfier@master-sil.fr"
'password': "VerySecurePassword"
'server': "partage.unistra.fr"
}
categorized_mails = classifier(login_info)
Vous trouverez dans "categorized_mails", un tableau pour chaque catégorie associée de la liste de mail avec les attributs suivants (UID (fournie par la librairie IMAP), TO, FROM, Date, Sujet, Texte brut du mail).