[Automatisierung] Extrahieren Sie Outlook-Termine mit Python

Ich verwalte Termine und Erfolge in Outlook, aber ...

Da mein Unternehmen über eine E-Mail-Kultur verfügt, verwende ich Outlook, um E-Mails auszutauschen und Arbeits- und Besprechungstermine in Outlook zu verwalten. Darüber hinaus zeichnen wir in unserem Outlook-Zeitplan für tägliche und wöchentliche Leistungsberichte auf, wann, was und wie viel wir getan haben.

Infolgedessen sind ** Outlook-Kalender voller Termine und Erfolge, deren visuelle Verwaltung mühsam sein kann **.

Wenn Sie die Geschäftsleistung des Tages in den Wochenbericht schreiben möchten, müssen Sie auch den Outlook-Kalender kopieren. Meine Arbeit ist ziemlich multitasking und die Anzahl der Zeitpläne pro Tag ist erstaunlich, so dass es sehr mühsam ist, sie manuell zu überprüfen und zu kopieren.

Wenn Sie Python verwenden, können Sie den Kalender auf einmal aus Outlook extrahieren, um ihn als Textdatei oder Excel zu formatieren und wie in einem täglichen Bericht einzufügen.

In diesem Artikel werde ich vorstellen, wie Termine mit Python aus der Microsoft Outlook-Client-Software extrahiert werden.

Extrahieren Sie den Outlook-Kalender mit Python

Sie müssen win32com.client importieren, um Outlook zu betreiben. Ich verwende Anaconda und konnte es ohne zusätzliche Installation importieren.

python


import win32com.client

Erstellen Sie dann ein Outlook-Objekt und rufen Sie es mit Ihrem Kalender ab.

python


outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
calender = outlook.GetDefaultFolder(9) #"9" ist der Outlook-Kalender

Dieser Kalender ist der Kalender. Geben Sie nun den Zeitraum an und extrahieren Sie den Zeitplan. Hier werde ich den Zeitplan von [2020-10-19 bis 2020-10-23] extrahieren.

python


import datetime

items = calender.Items #Dieser Artikel ist jeder "Plan"

select_items = [] #Eine Liste der Termine innerhalb eines bestimmten Zeitraums

#Geben Sie den Zeitraum an, für den Sie den Zeitplan extrahieren möchten
start_date = datetime.date(2020, 10, 19) # 2020-10-19
end_date = datetime.date(2020, 10, 23) # 2020-10-23

for item in items:
    if start_date <= item.start.date() <= end_date:
        select_items.append(item)

#Zeigen Sie die Details des extrahierten Zeitplans an
for select_item in select_items:
    print("Gegenstand:", select_item.subject)
    print("Ort:", select_item.location)
    print("Startzeit:", select_item.start)
    print("Endzeit:", select_item.end)
    print("Text:", select_item.body)
    print("----")

Ausführungsergebnis


Betreff: Fehleruntersuchung
Ort: Labor 1
Startzeit: 2020-10-20 10:00:00+00:00
Endzeit: 2020-10-20 11:30:00+00:00
Körper: Untersuchen Sie das Problem des Hängens mit Herrn A.
----
Betreff: Codeüberprüfung
Ort: Tagungsraum 3
Startzeit: 2020-10-22 14:00:00+00:00
Endzeit: 2020-10-22 15:00:00+00:00
Körper: Führen Sie mit Herrn B und Herrn C eine Codeüberprüfung des Projekts 1234 durch.
----
​

Sie haben den Zeitplan extrahiert! Wenn Sie eine Druckanweisung gemäß dem Format wie z. B. Tagesbericht erstellen, sollten Sie in der Lage sein, das Ausgabeergebnis so zu kopieren, wie es ist.

Codeübersicht

Zum Schluss werde ich den Code zusammenstellen.

python


import win32com.client
import datetime

outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")

calender = outlook.GetDefaultFolder(9)

items = calender.Items #Dieser Artikel ist jeder "Plan"

select_items = [] #Eine Liste der Termine innerhalb eines bestimmten Zeitraums

#Geben Sie den Zeitraum an, für den Sie den Zeitplan extrahieren möchten
start_date = datetime.date(2020, 10, 19) # 2020-10-19
end_date = datetime.date(2020, 10, 23) # 2020-10-23

for item in items:
    if start_date <= item.start.date() <= end_date:
        select_items.append(item)

#Zeigen Sie die Details des extrahierten Zeitplans an
for select_item in select_items:
    print("Gegenstand:", select_item.subject)
    print("Ort:", select_item.location)
    print("Startzeit:", select_item.start)
    print("Endzeit:", select_item.end)
    print("Text:", select_item.body)
    print("----")

Microsoft Office-bezogene Automatisierung

Klicken Sie hier, um weitere Automatisierungsserien zu Microsoft Office anzuzeigen. Bei Interesse bitte!

[Automatisierung] Senden Sie Outlook-E-Mails mit Python https://qiita.com/konitech913/items/51867dbe24a2a4272bb6

[Automatisierung] Lesen Sie Outlook-E-Mails mit Python https://qiita.com/konitech913/items/8a285522b0c118d5f905

[Automatisierung] Lesen Sie E-Mails (Nachrichtendatei) mit Python https://qiita.com/konitech913/items/fa0cf66aad27d16258c0

[Automatisierung] Lesen Sie Word-Dokumente mit Python https://qiita.com/konitech913/items/c30236bdf47775535e2f

Recommended Posts

[Automatisierung] Extrahieren Sie Outlook-Termine mit Python
[Automatisierung] Senden Sie Outlook-E-Mails mit Python
[Automatisierung] Extrahieren Sie die Tabelle als PDF mit Python
Extrahieren Sie die xz-Datei mit Python
[Mit Python automatisiert! ] Teil 1: Datei einstellen
[Anfänger] Extrahieren Sie Zeichenketten mit Python
[Mit Python automatisiert! ] Teil 2: Dateivorgang
[Python] Mail mit Outlook senden
[Automatisierung] Bearbeiten Sie Maus und Tastatur mit Python
[Automatisierung] Lesen Sie Word-Dokumente mit Python
[Automatisierung] Lesen Sie E-Mails (Nachrichtendatei) mit Python
FizzBuzz in Python3
Scraping mit Python
Scraping mit Python
Python mit Go
Twilio mit Python
In Python integrieren
Spielen Sie mit 2016-Python
AES256 mit Python
Getestet mit Python
Python beginnt mit ()
mit Syntax (Python)
Bingo mit Python
Zundokokiyoshi mit Python
Excel mit Python
Mikrocomputer mit Python
Mit Python besetzen
GUI-Automatisierung mit Python x Windows App Driver
Zip mit Python extrahieren (unterstützt japanische Dateinamen)
Extrahieren Sie E-Mail-Anhänge, die Thunderbird mit Python erhalten hat
Extrahieren Sie mit Python Daten von einer Webseite
Serielle Kommunikation mit Python
Zip, entpacken mit Python
Django 1.11 wurde mit Python3.6 gestartet
Python mit Eclipse + PyDev.
Socket-Kommunikation mit Python
Datenanalyse mit Python 2
Extrahieren Sie "Nur aktuelles Datum" und "Aktuelles Datum und Uhrzeit" mit Python datetime.
Scraping in Python (Vorbereitung)
Versuchen Sie es mit Python.
Extrahieren Sie die Tabelle der Bilddateien mit OneDrive & Python
Python lernen mit ChemTHEATER 03
Sequentielle Suche mit Python
"Objektorientiert" mit Python gelernt
Umgang mit Yaml mit Python
Löse AtCoder 167 mit Python
Serielle Kommunikation mit Python
[Python] Verwenden Sie JSON mit Python
Python lernen mit ChemTHEATER 05-1
Lerne Python mit ChemTHEATER
Führen Sie prepDE.py mit python3 aus
1.1 Erste Schritte mit Python
Tweets mit Python sammeln
Binarisierung mit OpenCV / Python
3. 3. KI-Programmierung mit Python
UI-Automatisierung mit Python
Kernel-Methode mit Python
Nicht blockierend mit Python + uWSGI
Scraping mit Python + PhantomJS
Tweets mit Python posten