以下声明按预期工作:
os.system("curl --data-binary \@"+input_file_path+" -o "+ file_name +" localhost:30")
但是在使用subprocess.popen
:
Popen(['curl','--data-binary','\@'+input_file_path, '-o', file_name,'localhost:30'], stdout=PIPE).communicate()[0]
Curl似乎挂起(登录到无限循环),就像输入文件没有传递给它一样(localhost:30必须正常运行)...
有什么想法吗?
答案 0 :(得分:3)
如何using a library而不是调用系统的卷曲?
答案 1 :(得分:2)
您可以尝试使用subprocess.Popen
中的原始字符串以及Popen
shell=True
的附加关键字参数:
subprocess.Popen("curl --data-binary \@"+input_file_path+" -o "+ file_name +" localhost:30",
stdout=subprocess.PIPE,
shell=True)