curl -v -d "api_key=kkkk&api_secret=ssss&endpoint=eeee&app=aaaa¶ms=[{"money":"1111", "last":"0.045"}, {"money": "1111", "last":"0.05"}]... > 500 records" http://my_server:port/api/process/json
这个应该转换成python脚本,因为我的目标是这些json部件{“money”:“...”,“last”:“....” }拥有500多个不同的货币价值。所有这些都会在最后传递给服务器。将curl命令转换为python代码
我已经尝试了几种不同的方法,甚至在这里询问某些步骤的帮助,但从未成功达到最终的预期结果。 所以我已经试过:
cog = []
for i in range(20201, 20705):
cog.append('{"money": str(i), "last": "0.001"}')
params = tuple(cog)
p_c = {}
p_c['api_key'] = 'kkkk'
p_c['api_secret'] = 'ssss'
p_c['app'] = 'aaaa'
p_c['endpoint'] = 'eeee'
p_c['params'] = json.dumps(params)
req1 = requests.post_simple(url=Server.My_server, params=p_c)
这一个是传递PARAMS为 “钱”:STR(I) http://my_server:port/api/process/json?api_key=kkkk&api_secret=ssss&endpoint=eeee&app=aaa¶ms=[ { “钱”:STR(I)......... ..........
我,我试过另一种选择(现在试图找到它),它被搞乱则params的秩序,使其他按键
的某些键的值还试过:
p_c = {}
p_c['api_key'] = 'kkkk'
p_c['api_secret'] = 'ssss'
p_c['app'] = 'aaaa'
p_c['endpoint'] = 'eeee'
params = '{"money":"11111","last":"0.0001"},'
for i in range(20201, 20705):
params = params + '{"money":"%d","last":"0.0001"},' % i
dat = ("params="+params)
req1 = requests.post_simple(url=Server.my_server,params=p_c, data=dat, headers=headers)
预期通呼叫服务器应该是这样的:双重编码的params
参数
http://my_server:port/api/process/json?api_key=kkkk&api_secret=ssss&endpoint=eeee&app=aaa¶ms=[{"money": "1111", "last": "0.0001"}, {"money":"22222", "last":"0.00001"},.... ,{more than 500},........]
*“这个搞乱了齿轮的顺序,使得其他键的一些键值”*。你能解释一下吗?它看起来像第一个片段应该做你想要的(一旦你修复'for'循环的缩进)。 – glibdud
“这一个搞乱了参数的顺序” 它应该是PARAMS。 我的意思是,当一切都传递给通话链接看起来像 ..... PARAMS = [{“钱”:“最后”,“钱”:“最后一次},{”1111“:”0.001“ ,“2222”:“0.001”} ......] 我完全不知道如何修复循环,以正确的顺序传递Key:值 –
除了缩进'cog。 append(...)'line,你也需要删除单引号,但是这不会导致你描述的问题,我不确定会怎么样,我不能复制它 – glibdud