2016-11-15 12 views
1

MailGunを使用して自動生成されたpdfファイルを添付ファイルとして送信しようとしましたが、リクエストライブラリからエラーが発生します。私が例題とまったく同じコードを使用しているので、それは私を狂わせてしまいます。mailgun(python)を添付したメールを送信する際にエラーが発生しました

私はこのエラーを取得する:リストオブジェクトが属性「更新」

を持っていないこれは私のコードです:

# Generation of the pdf file   
pdf = StringIO.StringIO() 
pisa.CreatePDF("<Some html code>", dest=pdf, encoding='utf8') 

# Sending the email 

requests.post("https://api.mailgun.net/v3/<MY_DOMAIN>/messages", 
     auth=("api", "<MY_API_KEY>"), 
     files = [("attachment", pdf.getvalue())], 
     data={"from": "[email protected]m", 
       "to": ["Jhon Doe", "[email protected]"], 
       "subject": "Hello", 
       "text": "Trying to send an attachment!"}) 

私はファイルを削除した場合は、それが動作ラインが、私は添付ファイルを送信する必要があります。 送信するファイルの種類を変更しようとしました。私はまた、もっと単純なものを試しました:

files = [("attachment", "Bla, bla bla")] 

しかし、私が得るエラーは、その行の形式(リスト)です。

お願いします。

答えて

2

ポストパラメータ "ファイル"はdictでなければなりません! http://docs.python-requests.org/en/master/user/quickstart/#post-a-multipart-encoded-file

+0

感謝を:ライブラリがここで見つけることができ要求にファイルをアップロードについて

# Generation of the pdf file pdf = StringIO.StringIO() pisa.CreatePDF("<Some html code>", dest=pdf, encoding='utf8') # Sending the email requests.post("https://api.mailgun.net/v3/<MY_DOMAIN>/messages", auth=("api", "<MY_API_KEY>"), files={"attachment": pdf.getvalue()}, data={"from": "[email protected]", "to": ["Jhon Doe", "[email protected]"], "subject": "Hello", "text": "Trying to send an attachment!"}) 

もっとに関する情報:

はこれを試してみてください。私はこの解決策を試したと確信していましたが、私はそう思わなかったようです。今私はもう一度試してみました。 –

関連する問題