Pywin32: метод «ограничить» объекта outlook Items для получения встреч не работает в моем коде - PullRequest
0 голосов
/ 08 февраля 2019

Проблема: метод restrict показывает мне результат, который я не рассматриваю: MSDN Документация к этому методу: https://docs.microsoft.com/en-us/office/vba/api/outlook.items.restrict

Привет, ребята,

Я пытаюсь прочитать встречи вOutlook 2017 с pywin32 в python (ОС: Win7 x64, местоположение: Германия).Это мой код, который я использую:

import win32com.client as win32
import datetime
outlookinst=win32.Dispatch('Outlook.Application')
ns=outlookinst.GetNamespace("MAPI")
existappointments=ns.GetDefaultFolder(9).Items
begin=datetime.date.today()
print(begin)
end = begin+datetime.timedelta(days=1)
print(end)
restriction="[Start] >= '" + begin.strftime("%m/%d/%Y") + "' AND [End] <=    '" +end.strftime("%m/%d/%Y") + "'"
existappointments = existappointments.Restrict(restriction)   
nCnt=1
if (existappointments !=None):
for index in existappointments :
    print(existappointments .Item(nCnt).Subject,existappointments .Item(nCnt).Start)
    nCnt=nCnt+1

В моем прогнозе на сегодня три тестовых назначения (2019/02/08):

subject: test1, start: 2019.02.08 8:30 end: 2019.02.08 9:00
subject: test2, start: 2019.02.08 10:00 end: 2019.02.08 10:30
subject: test3, start: 2019.02.08 8:30 end: 2019.02.08 9:00

результат моего кода:

2019-02-08
2019-02-09
xxxxx 2019-01-15 08:30:00+00:00 (xxxx for subject)
xxxxx 2017-07-14 11:15:00+00:00
xxxxx 2019-01-22 16:15:00+00:00

может быть, я должен рассмотреть проблему времени UTC?но я действительно не знаю, как заставить это работать правильно.

Может кто-нибудь дать мне несколько советов?большое спасибо.

добавьте одно очко:

, если я не использую метод restrict, тогда я могу видеть эти три контрольных встречи как результат:

...
test1 2019-02-08 08:30:00+00:00
test2 2019-02-08 10:00:00+00:00
test3 2019-02-08 13:00:00+00:00
...