Python Popen无法找到指定的文件

时间:2013-10-11 11:56:35

标签: python subprocess popen

我有以下代码

pathToFile = "R:\T2 Output\12345--01--Some File 1--ABCD.mp4"
process = subprocess.Popen(['ffprobe.exe', '-show_streams', '"'+pathToFile+'"'],
    shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

我收到错误:

[Error 2] The system cannot find the file specified

我尝试过:

  • 将shell更改为True = shell = False
  • 将命令组合成单个字符串而不是使用列表(我甚至将其打印到屏幕,我可以复制并粘贴到文件运行的命令提示符中,并提供预期的输出(无错误)
  • 我确保ffprobe.exe位于PATH中,可以从命令行执行而无需指定目录

注意事项:

  • 该文件位于映射的网络驱动器(R)
  • 文件在文件名中有空格,这就是我用引号括起来的原因。

我确定我错过了一些简单的事情。谁能指出我正确的方向?我已经在这个网站和其他网站上做了很多搜索,并尝试了一些建议。

1 个答案:

答案 0 :(得分:4)

\符号在python中计为转义字符,请使用r将其关闭:

pathToFile = r"R:\T2 Output\12345--01--Some File 1--ABCD.mp4"