Dieses Python-Tool exportiert Geburtstagsinformationen aus Apple Contacts und erstellt eine Remind-Datei für Geburtstagserinnerungen.
.gitignore | ||
contacts_to_remind.py | ||
LICENSE | ||
README.md |
Apple Contacts Geburtstage zu Remind Exporter
Dieses Tool exportiert Geburtstagsinformationen aus Apple Contacts und erstellt eine Remind-Datei für Geburtstagserinnerungen.
Voraussetzungen
- macOS (da Apple Contacts verwendet wird)
- Python 3.6+
- uv (Python-Projektverwaltungstool)
Installation
- Erstellen Sie ein Verzeichnis für das Projekt und wechseln Sie hinein:
mkdir contacts-to-remind
cd contacts-to-remind
- Erstellen Sie eine Umgebung mit uv:
uv venv
- Aktivieren Sie die Umgebung:
source .venv/bin/activate
- Installieren Sie die erforderliche Abhängigkeit:
uv pip install contacts
-
Speichern Sie das Script in einer Datei namens
contacts_to_remind.py
-
Machen Sie das Script ausführbar:
chmod +x contacts_to_remind.py
Verwendung
Grundlegende Verwendung
Führen Sie das Script aus, um eine geburtstage.rem
-Datei im aktuellen Verzeichnis zu erstellen:
./contacts_to_remind.py
Optionen
-o DATEI
,--output DATEI
: Gibt einen benutzerdefinierten Pfad/Namen für die Ausgabedatei an-v
,--verbose
: Zeigt ausführliche Informationen während der Ausführung
Beispiel mit Optionen:
./contacts_to_remind.py -o ~/remind/meine_geburtstage.rem -v
Remind-Format
Das Script erstellt eine Remind-Datei im folgenden Format:
# Geburtstage aus Apple Contacts
# Erstellt am: 2025-04-14 12:34:56
# Enthält Erinnerungen am Geburtstag und 7 Tage vorher
REM 15 JAN MSG Max Mustermann: Geburtstag (35 Jahre alt) %b
REM 15 JAN +7 MSG Vorwarnung: Max Mustermann hat in 7 Tagen Geburtstag (35 Jahre alt) %b
REM 28 FEB MSG Erika Beispiel: Geburtstag %b
REM 28 FEB +7 MSG Vorwarnung: Erika Beispiel hat in 7 Tagen Geburtstag %b
Die Rem-Einträge sind nach Monat und Tag sortiert und enthalten das Alter, wenn das Geburtsjahr bekannt ist. Für jeden Geburtstag gibt es zwei Einträge:
- Eine Erinnerung am eigentlichen Geburtstag
- Eine Vorwarnung 7 Tage vor dem Geburtstag mit der Syntax
+7
Hinweise
- Wenn bei einem Kontakt kein Geburtsjahr hinterlegt ist, wird kein Alter angezeigt
- Das Script kann als regelmäßiger Cron-Job eingerichtet werden, um die Geburtstagsdatei zu aktualisieren