Python для получения профиля пользователя электронной почты Outlook

Есть ли способ прочитать информацию профиля пользователя Outlook, например, должность, отдел, номер телефона и менеджер по отчетности, по указанному адресу электронной почты?

Например, у меня есть 5 адресов электронной почты (внутренний пользователь в той же компании)

Я хочу быстро узнать вышеуказанную информацию о каждом пользователе электронной почты (возможно, с помощью win32com?)

Спасибо.


person Mark K    schedule 30.05.2020    source источник


Ответы (1)


Вы можете использовать следующую последовательность действий в объектной модели Outlook:

Recipient.AddressEntry.GetContact() 

Класс ContactItem предоставляет все необходимые свойства. увлекающийся.

Чтобы получить экземпляр класса Recipient, вам нужно использовать CreateRecipient метода класса Namespace. Например, пример макроса VBA, который показывает, как использовать метод:

Sub ResolveName() 
 Dim myNamespace As Outlook.NameSpace
 Dim myRecipient As Outlook.Recipient
 Dim CalendarFolder As Outlook.Folder
 Set myNamespace = Application.GetNamespace("MAPI")
 Set myRecipient = myNamespace.CreateRecipient("Eugene Astafiev") ' or email address
 myRecipient.Resolve
 If myRecipient.Resolved Then 
  Call ShowCalendar(myNamespace, myRecipient) 
 End If
End Sub 

Sub ShowCalendar(myNamespace, myRecipient)
 Dim CalendarFolder As Folder 
 Set CalendarFolder = _ 
 myNamespace.GetSharedDefaultFolder _ 
 (myRecipient, olFolderCalendar) 
 CalendarFolder.Display 
End Sub
person Eugene Astafiev    schedule 30.05.2020
comment
Спасибо за твой ответ! Могу ли я узнать, есть ли способ интегрировать вышеуказанное в коды Python? - person Mark K; 31.05.2020