2017-11-07 9 views
2

Gmail 헤더를 추출하는 스크립트가 있습니다. 추출 할 정보가 많습니다. Outlook에서 데이터를 추출하려고하면 메신저가 작은 부분을 얻는 것처럼 느껴집니다. 내가 현재 가지고Python Outlook 헤더

스크립트는 다음과 같습니다 전망이 추출 할 수 머리글 단지 제한 금액이

print message.subject 
print message.CreationTime 
print To 
print Sender 
print address 
print cc 
print Importance 
print LastModificationTime 

있습니까 :

import win32com.client 
import re 

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

inbox = outlook.GetDefaultFolder(6) 

messages = inbox.Items 
message = messages.GetFirst() 
rec_time = message.CreationTime 

body_content = message.body 



while message: 
    To = message.To 
    Recipients = message.Recipients 
    Sender = message.Sender 
    address = message.Sender.Address 
    cc = message.CC 
    Importance = message.Importance 
    LastModificationTime = message.LastModificationTime 

그것은 다음과 같은 필드를 인쇄? 나는 같은 소스를 볼 tryed했습니다

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

내가 보낸 사람의 IP-adresses 같은 중요한 정보가 누락하고 있습니다. 어쨌든 3partytool을 사용하지 않고 더 많은 정보를 추출 할 수 있습니까?

감사합니다.

편집 : 작품 :

outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI") 
inbox = outlook.GetDefaultFolder(6) 
messages = inbox.Items 
for message in messages: 
msg = message.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x007D001F") 
+0

편집 해 주셔서 감사합니다. 현재 내 컴퓨터에는 3 개의 Outlook 프로필 (세 가지 전자 메일 계정)이 있습니다. 액세스 할 수있는받은 편지함을 선택하려면 어떻게해야합니까? – user5155835

답변

2

모든 MIME 헤더를 확인하려면 MailItem.PropertyAccessor.GetProperty를 사용하여 PR_TRANSPORT_MESSAGE_HEADERS MAPI 속성 (DASL 이름 http://schemas.microsoft.com/mapi/proptag/0x007D001F)을 참조하십시오.

OutlookSpy을 사용하여 해당 속성 (다른 모든 MAPI 및 OOM 속성)을 볼 수 있습니다 (IMessage 단추 클릭).

+0

고마워요! 어떻게 코드를 보여줄 수 있습니까? – user5155835

+0

@ user5155835 내 게시물을 업데이트했습니다. 그것이 작동하지 않는 이유는 특권 문제 때문이었습니다. –

+0

@ user5155835 outlook.GetDefaultFolder (6) 6 = 기본받은 편지함. 다른 폴더에 무엇이 있는지 확실하지 않습니다. P –