Aufgabenregistrierung oder Benachrichtigung in Python in Outlook (von VIM)

Für diejenigen, die einen engen internen Proxy haben und nur Outlook verwenden können

Die Aufgabenfunktion von Outlook ist wahnsinnig erstaunlich

--Todoixx, Wundexxx - Bevor Sie sagen, können Sie Outlook verwenden?

Nutzen Sie die Leichtigkeit von Python

――Wenn Sie mit Python eine Quelle erstellen, können Sie auf verschiedene Arten zusammenarbeiten und sind je nach Ihren Ideen frei

Vimmer?

In diesem Beispiel wird Vim als Schnittstelle zum Ablauf von Aufgaben verwendet.

win32com.client

Quelle

Outlook_alert_vim.py


# coding: utf-8
import pytz
import sys
from datetime import datetime, timedelta
import win32com.client as wcl


def win_time_norm(d):
    '''
In Outlook-Zeitformat konvertieren
    :param d: Datetime
    :return: Type pytx Datetime
    '''
    date = pytz.utc.localize(d)
    return date


def post_outlook_task(task_list):
    '''
Registrieren Sie Aufgaben in Outlook
・ Win32com.Client vorbereiten
・ Anaconda ist standardmäßig enthalten
    out_task.DueDate = s_win_day
・ Wenn Sie das Datum auf heute einstellen, kann stattdessen die Benachrichtigung verwendet werden.
・ Wenn die Frist festgelegt ist, z_win_Tag registrieren
・ Edday(5 Tage)で5 Tage後アラートにしてる
    :param task_list:Betreff die erste Textzeile in VIM
    '''
    stday = datetime.today()
    edday = datetime.today() + timedelta(days=5)
    s_win_day = win_time_norm(stday)
    e_win_day = win_time_norm(edday)

    outlook = wcl.Dispatch("Outlook.Application")
    for task in task_list:
        out_task = outlook.CreateItem(3)
        out_task.Subject = task[0]
        out_task.Body = task[1]
        out_task.StartDate = s_win_day
        out_task.DueDate = s_win_day
        # out_task.DueDate = e_win_day
        out_task.ReminderSet = True
        out_task.Save()


def main(args):
    filename = str(args[0])
    with open(filename, mode="r", encoding='utf-8') as fh:
        data = fh.readlines()

    data = [t.strip().strip('\n') for t in data if t]
    #Ich kann mich kontinuierlich registrieren(Ich brauche dieses Beispiel nicht)
    task_list = []
    task_list.append((data[0], "\n".join(data)))
    # task_list.append(("test subject","body row1 \n body row2"))

    post_outlook_task(task_list)


if __name__ == "__main__":
    main(sys.argv[1:])

Geben Sie den Speicherort von s: python_file selbst an.

_vimrc


"outlook_task_vim"{{{
function! s:outlook_posttask_vim()"
    let s:python_file = "D:/Outlook_alert_vim.py"
    let s:file = tempname()
    silent execute ":write " . s:file
    silent execute "!python " . s:python_file . ' ' . s:file
    call delete(s:file)
    unlet! s:file
    unlet! s:py_script
endfunction augroup END"
command! -nargs=0 PostOutlookTask call s:outlook_posttask_vim()
"}}}

Recommended Posts

Aufgabenregistrierung oder Benachrichtigung in Python in Outlook (von VIM)
Python aus oder importieren
OCR aus PDF in Python
Lesen Sie Outlook-E-Mails mit Python
Fehlerbenachrichtigungsmethode beim Aufrufen von Python über die Windows-Benutzeroberfläche oder Winsound.Beep
Formatieren Sie Python-Code automatisch mit Vim
Extrahieren Sie mit Python Text aus Bildern
Schreiben Sie das Vim-Plugin in Python
Ich habe Line Benachrichtigung in Python versucht
Extrahieren Sie mit Python Zeichenfolgen aus Dateien
Erhalten Sie Wechselkurse von offenen Wechselkursen in Python
Wiederbelebt von "kein Internetzugang" in Python
Verhindern Sie den doppelten Start von cron in Python
Express Python-Ertrag in JavaScript oder Java
Nehmen Sie die logische Summe von List in Python (Zip-Funktion)
Push-Benachrichtigung vom Python-Server an Android
Referenz der INI-Datei in Python oder Ruby
Laden Sie Bilder von der URL-Liste in Python herunter
Holen Sie sich den Batteriestand von SwitchBot mit Python
Schreiben Sie ein einfaches Vim-Plugin in Python 3
Generieren Sie eine Klasse aus einer Zeichenfolge in Python
Nicht logische Operatorverwendung von oder in Python
Generieren Sie mit Python eine C-Sprache aus dem S-Ausdruck
In Python von Markdown in HTML konvertieren
Holen Sie sich mit Python die Niederschlagswahrscheinlichkeit aus XML
Parallele Taskausführung mit concurrent.futures in Python
Abrufen des Metrikverlaufs von MLflow in Python
Erstellen Sie in 1 Minute eine Vim + Python-Testumgebung
[Python] Konvertieren von DICOM in PNG oder CSV
Von der Datei zur Diagrammzeichnung in Python. Grundstufe Grundstufe
Erstellen Sie eine neue Todoist-Aufgabe aus Python Script
Verwenden Sie Python in Ihrer Umgebung von Win Automation
Verwenden Sie Emacs oder Vim-Tastenkombinationen in IPython Notebook
Lassen Sie uns einige Beispiele für die Benachrichtigungsverarbeitung in Python erstellen
Teilen Sie Dateien beim Schreiben des Vim-Plugins in Python
Rufen Sie Python-Skripte aus Embedded Python in C ++ / C ++ auf
Laden Sie Bilder von der URL mit Pillow in Python 3
Wählen Sie zufällig Elemente aus der Liste (Array) in Python aus
Holen Sie sich nur Artikel von Webseiten in Python