Added Readme and helper scripts

This commit is contained in:
Florian Kaiser
2025-05-09 08:36:55 +02:00
parent b648c0f6b9
commit 0c214f4c5a
3 changed files with 138 additions and 0 deletions

83
README.md Normal file
View File

@@ -0,0 +1,83 @@
# Mail Attachments Extractor
Extrahiere E-Mail-Anhänge automatisch aus beliebigen E-Mail-Konten und speichere sie lokal. Unterstützt das Löschen von Duplikaten und das Anzeigen verfügbarer Ordner.
---
## 1. Konfiguration
Erstelle eine Konfigurationsdatei namens `config.json` auf Basis der Vorlage `config.example.json`:
```json
{
"accounts": [
{
"server": "E-Mail-Server",
"port": "E-Mail-Port",
"user": "Benutzername",
"password": "Passwort",
"remote_folders": ["Kommagetrennte Liste der Ordner auf dem E-Mail-Server"],
"local_folder": "Lokaler Ordner für die gespeicherten Dateien",
"since": "Datum im Format 09-May-2025"
}
]
}
```
**Hinweis:**
- `remote_folders` enthält die Namen der Ordner, aus denen Anhänge geladen werden sollen.
- `since` gibt das früheste Datum an, ab dem E-Mails berücksichtigt werden.
---
## 2. E-Mail-Anhänge laden
Lädt alle Anhänge gemäß der Konfiguration herunter:
```bash
python3 main.py
```
---
## 3. Duplikate löschen
Findet und entfernt doppelte Dateien im Zielordner unabhängig vom Dateinamen:
```bash
python3 delete_duplicates.py /zu/verarbeitender/Ordner
oder
python3 delete_duplicates.py C:\zu\verarbeitender\Ordner
```
**Hinweis:**
Aktuell werden die Dateien nicht gelöscht sondern nur umbenannt zu `deleted_Dateiname`
---
## 4. Verfügbare Ordner anzeigen
### 4.1 Ordner abrufen
Zeigt alle verfügbaren Ordner des aktuellen E-Mail-Kontos an:
```bash
python3 get_folders.py
```
### 4.2 Beispielausgabe
```
(\HasChildren) "/" INBOX
(\HasNoChildren \UnMarked \Trash) "/" INBOX/Trash
(\HasNoChildren \UnMarked \Junk) "/" INBOX/Junk
(\HasNoChildren \Sent) "/" INBOX/Sent
(\HasNoChildren \UnMarked \Drafts) "/" INBOX/Drafts
```
Die relevanten Ordnernamen sind die letzten Einträge jeder Zeile, z.B. `INBOX`, `INBOX/Trash` usw.