지난번 "Python으로 Outlook의 메일정보 읽어오기"에 이어서 이번에는 폴더 정보를 읽어오는 방법이다.


import win32com.client


def searchFolder(folders):

    for f in folders:

        print("P:%s , N:%s , [%s]" % (f.FolderPath, f.Name, f.Folders.Count))

        if f.Folders.Count > 0:

            searchFolder(f.Folders)


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

inbox = outlook.GetDefaultFolder(6)


searchFolder(inbox.Folders)


[참고]

Folder 개체 설명

https://msdn.microsoft.com/en-us/vba/outlook-vba/articles/folder-object-outlook


AND

Outlook은 따로 처리하는 컴포넌트가 없고 win32를 통해 바로 Outlook의 데이터를 읽어야 하는것 같다.


win32를 사용하기 위한 python용 컴포넌트 설치

pip install pywin32

S:\WORK2>pip install pywin32

Collecting pywin32

  Downloading https://files.pythonhosted.org/packages/d4/2d/b927e61c4a2b0aaaab72c8cb97cf748c319c399d804293164b0c43380d5f/pywin32-223-cp36-cp36m-win32.whl (8.3MB)

    100% |████████████████████████████████| 8.3MB 3.7MB/s

Installing collected packages: pywin32

Successfully installed pywin32-223


python 샘플 코드

# Outlook의 Inbox에 들어있는 메일 정보 1건 읽어오기

import win32com.client


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

inbox = outlook.GetDefaultFolder(6)

messages = inbox.Items

#print(inbox.Items.Count)


message = messages.GetLast()

print(message.SenderEmailAddress)

print(message.SenderName)

print(message.SenderEmailType)

print(message.To)

print(message.CC)

print(message.ConversationID)

print(message.ConversationIndex)

print(message.ConversationTopic)

print(message.CreationTime)

print(message.ReceivedTime)

print(message.Subject)

print(message.Size)


[참고]

Folder type 설명

# Folder Type 6은 inbox를 의미한다. 

https://msdn.microsoft.com/en-us/vba/outlook-vba/articles/oldefaultfolders-enumeration-outlook


Items Object 설명

https://msdn.microsoft.com/en-us/vba/outlook-vba/articles/items-object-outlook

 

Mail Properties 설명

https://msdn.microsoft.com/en-us/vba/outlook-vba/articles/mailitem-object-outlook



AND

1. Visual Studio Code 설치

https://code.visualstudio.com/Download

플랫폼에 맞는 설치 파일을 받아서 설치 진행. 전 Windows 버튼을 눌러 64bit 설치 파일을 받아서 설치 했습니다.



2. Python 설치

https://www.python.org/downloads/

저는 3.7 버전이 새로 나왔다고 해서 설치해 봤는데 사용하던 컴포넌트 중에 아직 3.7을 지원 안하는게 많아서 다시 3.6 버전으로 내려서 설치 했습니다.

설치 하면서 "Add Python 3.6 to PATH"를 체크하고 설치해야 수동으로 추가하는 수고를 덜 수 있습니다.




3. Visual Studio Code 구성

Visual Studio Code 실행 후 왼쪽에 있는 메뉴 중 Extension을 선택 합니다.

검색 창에서 Python을 검색하면 여러 Extension이 검색 되는데 그 중 Microsoft의 Extension을 선택해서 설치 합니다.



4. Python 테스트

간단한 스크립트를 짜서 수행해 봅니다.

마우스 오른쪽 버튼을 눌러서 나오는 메뉴 중 "Run Python File in Terminal"을 선택하면 화면 하단의 Terminal 영역에 수행한 결과가 표시 됩니다.



AND