我希望Python运行curl的系统命令,我传入一些参数。我还想使用-w "%{http_code}"
返回结果的HTTP状态代码(例如200
,302
等)
我目前拥有的命令是
print os.popen('curl "{0}" -L -o /dev/null -s -w "%{http_code}"'.format("http://google.com")).read()
但是这会返回KeyError: 'http_code'
并且我推测它,因为http_code
被花括号包裹。我该如何解决这个问题?
答案 0 :(得分:6)
传递给.format
时,只需加倍花括号:
'curl "{0}" -L -o /dev/null -s -w "%{{http_code}}"'.format("http://google.com")
这会逃脱它们并在结果字符串中产生%{http_code}
。