特定の送信者の電子メールをチェックし、受信した場所で自動的に処理したい
ただし、送信者からメールを受信して未読としてマークされている間に、見通しが再起動されたという状況が発生する可能性があります
特定の件名の新しいメールを継続的に監視するために、次のコードを見つけました
import win32com.client
import pythoncom
import re
class Handler_Class(object):
def OnNewMailEx(self, receivedItemsIDs):
# RecrivedItemIDs is a collection of mail IDs separated by a ",".
# You know, sometimes more than 1 mail is received at the same moment.
for ID in receivedItemsIDs.split(","):
mail = outlook.Session.GetItemFromID(ID)
subject = mail.Subject
print subject
try:
command = re.search(r"%(.*?)%", subject).group(1)
print command # Or whatever code you wish to execute.
except:
pass
outlook = win32com.client.DispatchWithEvents("Outlook.Application",Handler_Class)
#and then an infinit loop that waits from events.
pythoncom.PumpMessages()
私も未読メールを全部調べて差出人からのメールが来ているかチェックして処理したい(見つかったら)
handler_class 内に追加する未読メールをチェックする機能はありますか
または、代替手順について教えてください