2015-11-26 98 views
2

我有以下的「捲曲」命令Mailgun工作:轉換捲曲httplib的標頭

curl -s --user 'api:key-xxxxxx' \ 
    https://api.mailgun.net/v3/sandboxyyyyyy.mailgun.org/messages \ 
    -F from='Excited User <[email protected]>' \ 
    -F [email protected] \ 
    -F [email protected] \ 
    -F subject='Hello' \ 
    -F text='Testing some Mailgun awesomness!' 

我需要使用「httplib的」在Python(!不請求)發送電子郵件與Mailgun。如何將curl命令轉換爲httplib.HTTPSConnection請求中使用的HTTP頭('POST',URL,params,headers)?

回答

1

用法httplib不是問題。

import httplib 
import urllib 
from base64 import b64encode 

# your form 
params = urllib.urlencode({'from': 'Excited User <[email protected]>', 
          'to': '[email protected]', 
          'subject': 'Hello', 
          'text': 'Testing some Mailgun awesomness!'}) 

# build authorization 
user_and_pass = b64encode(b"username:password").decode("ascii") 

# headers 
headers = {'Authorization': 'Basic %s' % user_and_pass} 

# connection 
conn = httplib.HTTPConnection("api.mailgun.net") 
conn.request('POST', '/v3/sandboxyyyyyy.mailgun.org/messages', params, headers) 

# get result 
response = conn.getresponse() 

print response.status, response.reason 

data = response.read() 

conn.close() 

請檢查沙箱網址和參數。

另外,文檔可在https://documentation.mailgun.com/api-sending.html#sending