Python HTTP请求替换bash卷曲

时间:2016-06-09 16:19:07

标签: python bash curl

我正在将一些自动化脚本从bash移植到python,它们几乎可以卷曲以下格式的命令:

curl -k -H "Content-Type: application/json" -X POST -d '{               "Request": {
                          "MessageID": "xxxx",
                          "MessageDateTime": "xxxxx",
                          "SourceSystem": "xxxx",

           }
}' https://myUrl.xxx

准确地在Python中构建此内容的最佳方法是什么?到目前为止,我有:

import requests

headers = {'Content-Type': 'application/json'}
payload = {'All the data'}
conn = httplib.HTTPConnection("myUrl.xxx")
conn.request("POST", "", payload, headers)
response = conn.getresponse()
print response

我想确保在此脚本中反映-k,-d和-x bash选项。谢谢!

1 个答案:

答案 0 :(得分:2)

您可以直接使用requests.post-k对应verify=False

from datetime import datetime as DateTime
import requests
import json

URL = "https://myUrl.xxx"

message = {
    "Request": {
        "MessageID": "xxxx",
        "MessageDateTime": DateTime.now().isoformat(),
        "SourceSystem": "xxxx",
    }
}

response = requests.post(URL, data=json.dumps(message), verify=False, headers={"Content-Type":"application/json"})
data = response.json()