2016-12-27 14 views
1

私はPython用O365を使用しています。 setBodyHTML()関数を使用して電子メールを送信し、本文を構築します。しかし、現時点では、関数内に実際のHTMLコードを記述する必要があります。私はそれをしたくありません。私はどこかに保存したHTMLファイルをPythonで見て、そのファイルを本体として使用して電子メールを送信したいだけです。それは可能ですか?あるいは、HTMLをコピーしてその機能に貼り付けることに専念していますか?私はビジネスのためにoffice365を使用しています。ありがとう。これに代えつまりPython O365はHTMLファイルで電子メールを送信します

file = open('C:/somemsg.html', 'r') 
content = file.read() 
file.close() 
msg.setBodyHTML(content) 

答えて

1

msg.setBodyHTML("<h3>Hello</h3>")私はこれを行うことができるようにしたいですそのファイルを文字列に読み込んでsetBodyHTML関数に渡します。ここで

は、トリックを行います迅速な機能の例です:

def load_html_from_file(path): 
    contents = "" 
    with open(path, 'r') as f: 
     contents = f.read() 

    return contents 

後で、

msg.setBodyHTML(load_html_from_file("C:\somemsg.html")) 

または
html_contents = load_html_from_file("C:\somemsg.html") msg.setBodyHTML(html_contents)

+1

エクセレントの線に沿って何かを行うことができます。これはうまくいった。今私はこのHTMLの私のHTMLにCSSを実装する方法があるかどうかを尋ねる必要がありますが、それがトピックではないかもしれないので、新しいスレッドが必要かどうかはわかりません。 –

0

することができます:私はあなたがすなわち、最初の変数にファイルの内容を割り当てることができますねmsg.setBodyHTML("C:\somemsg.html")

関連する問題