Curl - python-requests库中的数据二进制等价物

时间:2017-06-14 05:39:18

标签: python curl post binary python-requests

我正在尝试使用python中的python-requests库将测试数据发布到服务器。我可以使用终端中的Curl使用以下命令成功发布数据:

curl -i -XPOST 'http://myServerAddress/write?db=some_data' --data-binary 'param1,state=test,param2=1 param3=2.932,param4=3250 1497064544944 '

我正在尝试对请求或者甚至是pycurl python库做同样的事情。我很难用pycurl或者请求翻译“--data-binary”部分。使用请求库执行类似的操作,例如:

import requests    

p = requests.post('http://myServerAddress/write?db=some_data', data={'param1,state=test,param2=1 param3=2.932,param4=3250 1497064544944 '})

print(p)
print(p.status_code)
print(p.text)

获取“TypeError:运行代码时shell中需要一个类似字节的对象,而不是'set'”。我错过了什么?任何帮助表示赞赏。感谢。

1 个答案:

答案 0 :(得分:1)

尝试这样的事情

import requests
data='param1,state=test,param2=1 param3=2.932,param4=3250 1497064544944 '
p = requests.post('http://myServerAddress/write?db=some_data', data.encode())