前提・実現したいこと
Excelで指定した期間のメールの中からタイトルに案件名が入っているメールを取り出し、本文の【面談名】○○というタイトルでメールを指定のフォルダに保存するコードを書こうと考えています。
発生している問題・エラーメッセージ
メールを指定のフォルダに保存しようとすると、下記のエラーが出ます。。。
他のところも間違っているような気がするのですが、ググっても同様のエラーの対処法が出てこず、解決策があれば、ご教示頂けますと幸いです。
File "c:\Users\gerra.vscode\extensions\ms-python.python-2019.6.24221\pythonFiles\ptvsd_launcher.py", line 43, in <module> main(ptvsdArgs) File "c:\Users\gerra.vscode\extensions\ms-python.python-2019.6.24221\pythonFiles\lib\python\ptvsd\__main__.py", line 434, in main run() File "c:\Users\gerra.vscode\extensions\ms-python.python-2019.6.24221\pythonFiles\lib\python\ptvsd\__main__.py", line 312, in run_file runpy.run_path(target, run_name='__main__') File "C:\Users\gerra\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 263, in run_path pkg_name=pkg_name, script_name=fname) File "C:\Users\gerra\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 96, in _run_module_code mod_name, mod_spec, pkg_name, script_name) File "C:\Users\gerra\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 85, in _run_code exec(code, run_globals) File "c:\Users\gerra\Desktop\python_lesson\automail4.py", line 36, in <module> message.SaveAsFile(newfolder_path + '\' + foldermake) File "C:\Users\gerra\AppData\Local\Programs\Python\Python37\lib\site-packages\win32com\client\dynamic.py", line 527, in __getattr__ raise AttributeError("%s.%s" % (self._username_, attr)) AttributeError: <unknown>.SaveAsFile
該当のソースコード
python
1#ステップ1|ライブラリ 2from openpyxl import load_workbook 3import win32com.client 4import datetime 5import os 6 7#ステップ2|所定フォルダ内の「Book1.xlsm」を指定して読み込む 8filepath = r'C:\Users\gerra\Desktop\python_lesson\Outlook_Book1.xlsx' 9wb = load_workbook(filename=filepath) 10ws1 = wb['データ'] 11 12#ステップ3|集計範囲の取得 13startdate=ws1['B2'].value 14enddate=ws1['B3'].value 15 16#ステップ4|Outlookの情報を取得 17outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI") 18inbox = outlook.GetDefaultFolder(6) 19messages=inbox.Items 20 21#ステップ5|Outlookの添付ファイル保管用フォルダの作成 22now=datetime.datetime.now() 23foldermake=now.strftime("%Y/%m/%d %H:%M:%S") 24foldermake = foldermake.replace("/","-") 25foldermake = foldermake.replace(":","-") 26foldermake = foldermake.replace(" ","-") 27#新しいフォルダを作る必要は無し。 28newfolder_path = r'C:\Users\gerra\Desktop\仕事関連\これまでの資料\【添付資料】' + "メール本文" 29#ステップ6|Outlookの情報を取得 30a=0 31for message in messages: 32 RT=message.ReceivedTime 33 hiduketime = datetime.datetime(RT.year ,RT.month, RT.day, RT.hour, RT.minute, RT.second) 34 if startdate <= hiduketime <= enddate: 35 if "案件名" in message.Subject: 36 message.SaveAsFile(newfolder_path + '\' + foldermake) 37 messagepath = newfolder_path + '\' + foldermake 38 if "面談名" in message.body[0:100]: 39 with open(messagepath,"r") as f: 40 lines = f.readlines() 41 stat = 0 42 for line in lines: 43 if stat == 0: 44 print (line.strip("【面談名】")) 45 stat = 1
試したこと
Googleでエラーコードを検索
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。