【发布时间】:2017-01-05 11:08:48
【问题描述】:
我正在使用以下 python 代码从 url 读取数据。来自 unix 的 curl 命令有效。但是当我尝试将返回的 json 存储在 python 变量中时,它总是空白。
任何指针?我确实在 Spyder 控制台上看到了输出,但从未在变量中看到。
p =sp.Popen(["curl","-i","-X", "POST" ,"-H", "Content-Type:application/json" ,"-H", "Authorization:Basic NEg0VU9QR1BZODAWVI4N1dLUFpXRzp4SVpxUUkzbUFuVG9RUlJDcXBLWkdB","-d", '{ "grant_type": "client_credentials" }', "https://rridata.wikimapia.com/v1.0/oauth/token/"], stdout = sp.PIPE, shell=False)
#p =sp.check_output(['curl','-i','-X', 'POST' ,'-H', 'Content-Type:application/json' ,'-H', 'Authorization:Basic NEg0VU9QR1BZODATEpDc2oyNGRGa0c5SVpxUUkzbUFuVG9RUlJDcXBLWkdB','-d', '{ "grant_type": "client_credentials" }', 'https://rdata.wikimapia.com/v1.0/oauth/token/'])
out,err = p.communicate()
print out
编辑:我的环境详细信息。我在 Windows 7 上,从 Anaconda Spyder IDE 执行命令。
【问题讨论】:
标签: python api curl pipe subprocess