运行 linux 来自 django 视图脚本的命令
Run linux command from django view script
我尝试将 avconv 用于我的网络应用程序(pythonanywhere 上的 Django)。我必须从视频文件中提取缩略图。
使用 bash 控制台,我可以 运行:
avconv -ss 00:01:00 -i myapp/myapp/media/inputvide.mp4 -vsync 1 -t 0.01 myapp/myapp/media/videothumb.png
这很好用。
当我想通过脚本(view.py)使用这个命令时,我试过:
cmd = 'avconv -ss 00:01:00 -i '+inputfile+' -vsync 1 -t 0.01 '+outputfile
os.system(cmd)
inputfile 是我的视频的路径,outputile 是我的视频的路径 + '.png'
没有抛出任何错误,但我无法在我的文件夹中的任何位置找到输出文件?
有什么想法吗?
谢谢!
您可以尝试使用子进程库:
from subprocess import call
success = call('avconv -ss 00:01:00 -i '+inputfile+' -vsync 1 -t 0.01'+outputfile, shell=True)
if success != 0:
//The command has failed
我尝试将 avconv 用于我的网络应用程序(pythonanywhere 上的 Django)。我必须从视频文件中提取缩略图。 使用 bash 控制台,我可以 运行:
avconv -ss 00:01:00 -i myapp/myapp/media/inputvide.mp4 -vsync 1 -t 0.01 myapp/myapp/media/videothumb.png
这很好用。 当我想通过脚本(view.py)使用这个命令时,我试过:
cmd = 'avconv -ss 00:01:00 -i '+inputfile+' -vsync 1 -t 0.01 '+outputfile
os.system(cmd)
inputfile 是我的视频的路径,outputile 是我的视频的路径 + '.png' 没有抛出任何错误,但我无法在我的文件夹中的任何位置找到输出文件?
有什么想法吗?
谢谢!
您可以尝试使用子进程库:
from subprocess import call
success = call('avconv -ss 00:01:00 -i '+inputfile+' -vsync 1 -t 0.01'+outputfile, shell=True)
if success != 0:
//The command has failed