Raspberry Pi:终止来自python的raspistill命令

我试图在服务器上使用PHP文件来将一些变量传输到Python脚本中,然后在我的Raspberry Pi上启动一个简单的时间间隔。

我到目前为止设法开始拍照,但我现在想要有一个按钮来杀死timelapse - 我已经尝试了许多方法,包括.kill()和.terminate(),但无法让它工作。

这是我目前的Python代码:

import sys, os, time, datetime
import subprocess
import signal
from time import sleep

tlfreq = int(sys.argv[1])
tltime = int(sys.argv[2])
dir = '/var/www/timelapse/' + sys.argv[3]

if not os.path.exists(dir):
    os.makedirs(dir)

cmd = ('raspistill -t ' + str(tltime) + " -tl " + str(tlfreq) + " -o " + dir + "/photo_%04d.jpg")
pro = subprocess.Popen(cmd, stdout=subprocess.PIPE,
                   shell=True, preexec_fn=os.setsid)
print "Pictures are now being taken every" , tlfreq/1000 , "second/s for a total of", tltime/3600000 , "hours. These are being stored in", dir

也许我需要一个“if variable = 1然后kill”命令,然后将该变量发送给python。

任何帮助将不胜感激!

非常感谢,丹


您可以使用此代码创建新的python脚本kill_raspystill.py

import os

os.system("pkill raspistill")

并在按下按钮时调用该脚本。


我会建议信号库:http://docs.python.org/2/library/signal.html

链接地址: http://www.djcxy.com/p/77153.html

上一篇: Raspberry Pi: terminate raspistill command from python

下一篇: python as a "batch" script (i.e. run commands from python)