2017-10-06 41 views
1

私はOutlookから次のコード(Reading e-mails from Outlook with Python through MAPI)を使って電子メールを読むことができると理解しました。pythonとwin32comでOutlookの電子メールを読むときの認証の仕組み

import win32com.client 

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

inbox = outlook.GetDefaultFolder(6) # "6" refers to the index of a folder - in this case, 
            # the inbox. You can change that number to reference 
            # any other folder 
messages = inbox.Items 
message = messages.GetLast() 
body_content = message.body 
print body_content 

ただし、上記のコードのどこにでもユーザー名とパスワードは提供していません。 次に、コードはOutlookアカウントをどのように認証しましたか?

ここでどのように認証が行われているか説明できます。

+0

https://stackoverflow.com/questions/1225586/checking-email-with-python – amrit

答えて

2

win32com.clientは、Outlook COM objectと相互作用している。 のOutlooksingletonであるため、実際にはの「隠された」インスタンスが作成されています。Outlook Outlookにログインするたびに、ユーザー名とパスワードを入力する必要はありません。このため、ここでもユーザー名とパスワードは必要ありません。

また、OutlookのCOMオブジェクトが開かれている限り、 "exlporer"を通じてOutlookを開くことはできません。これは、Outlookのインスタンスが1つしか許可されていないためです。 OutlookのGUIを開いたことはありませんが、まだ新しいメールのポップアップメッセージが表示されます。

関連する問題